2012-03-21 8 views
3

У меня есть следующий скрипт в xhtml. Я использую простые грани 3.1.Проблема при добавлении тегов html в .append() jquery .xhtml

<script>    
     $(document).ready(function(){ 
      $("#form_Detail").submit(function(){ 
        $('input[name$="vInputTxt1"]').each(function(){ 
         if($(this).val()==""){ 
          $("#errorMessages").append("v is required"); 
          $("#errorMessages").append('<br />'); 
         } 
        }); 

        $('input[name$="gcInputTxt"]').each(function(){ 
         if($(this).val()==""){ 
        Line A:  $("#errorMessages").append("gc is required"); 
         } 
        }); 
      }); 
     }); 
    <script> 

Все работает отлично, пока я не включать

$("#errorMessages").append('<br />'); 

После добавления бр тега, я получаю ошибку: неперехваченный SyntaxError: Неожиданный маркер; на линии А.

Возможно потому, что HTML, который становится генерируемый:

$('input[name$="vInputTxt1"]').each(function(){ 
    if($(this).val()==""){ 
     $("#errorMessages").append("v is required"); 
     $("#errorMessages").append('<br />'); 
    } 
}); 

          $('input[name$=&quot;gcInputTxt&quot;]').each(function(){ 
    if($(this).val()==&quot;&quot;){ 
    $(&quot;#errorMessages&quot;).append(&quot;gc is required&quot;); 
    } 

});

Пожалуйста, обратите внимание, что Evry "" после уш тег получил преобразуется в &quot;

Будучи новым для JQuery & XHTML, я не могу понять причину. Я прочитал Why can't I add a <br /> with JQuery .html? & Creating valid XHTML when using jQuery .append(), но не смог определить проблему.

Если я не использую, $ ("# errorMessages"). Append ('
'); html добавляется к div errorMessages.

Спасибо, Shikha

+0

Что произойдет, если вы не включают
тег? Если вы можете показать некоторые для своего html-кода? –

+0

@ Digvijay Да, код html добавляется в div в этом случае. –

+0

Это означает отсутствие ошибок, если вы не добавляете тег
? –

ответ

0

Здесь я В заявлении, прежде чем добавить
тег у вас есть следующее заявление

$("#errorMessages").append("v is required"); 

Этот метод Append из JQuery для добавления некоторых HTML-элемента на странице, но вы добавляете строку, которую jquery не может проанализировать. Таким образом, это дает ошибку неожиданного токена.

+0

'çode' $ («#errorMessages»). append («v требуется»); 'çode' отлично работает и отображается правильно, если я не включаю' çode' $ ("# errorMessages"). append ('
'); ' çode' –

0

Имеет ли значение, если вы измените строку: $("#errorMessages").append("<br />");

Если нет, то измените .append("v is required"); на .html("v is required"); и .append("gc is required"); к .html("gc is required");

+0

Пробовали оба: используя $ ("# errorMessages"). append ("
"); & change .append to .html. Но проблема остается. –

Смежные вопросы