2014-02-18 3 views
0

Я хочу использовать переменную в условии if, которое находится в шаблоне jquery. Журнал консоли говорит:с использованием нескольких предложений в if в шаблоне jquery

Uncaught Syntax Error: Unexpected token { 

Вот мой код:

var isActive = true; 
        var isPasive = false; 
        var isGuest = false; 

         var tmp = '<script>' + 

      '{{each hastalar}}' + 
       '<a href="#" class="patientRow" data-name="${$value.M_AdiSoyadi}" data-tc="${$value.M_TcKimlikNo}" data-tahlilgunu="${$value.M_TahlilGunu}"> ${M_AdiSoyadi}' + 
       '{{if $value.M_HastaBulunmaDurumu == "1" && ${isActive} }}' + 
        '<img id="imgMember_${$value.M_TcKimlikNo}" src="images/greenmember.png" title="Hasta klinik ve DYOB kayıtlarıyla örtüşüyor." style="width:15px;height:15px;"/>' + 

       '{{else $value.M_HastaBulunmaDurumu == "2" }}' + 
        '<img id="imgMember_${M_TcKimlikNo}" src="images/bluemember.png" title="Hasta kliniğinizde mevcut fakat DYOB sisteminde sizin kliniğinizde görünmüyor. Lütfen DYOB sistmine hasta kaydını yapınız." style="width:15px;height:15px;"/>' + 
       '{{else $value.M_HastaBulunmaDurumu == "3"}}' + 
        '<img id="imgMember_${M_TcKimlikNo}" src="images/redmember.png" title="Hasta kliniğinizde mevcut değil fakat DYOB sisteminde sizin kliniğinizde görünüyor. Lütfen kan tahlili yapılan hastaların listesini kontrol ediniz." style="width:15px;height:15px;"/>' + 
       '{{/if}}' + 
       '<img id="imgResult_${$value.M_TcKimlikNo}"/>' + 
       '<img id="imgInfo_${$value.M_TcKimlikNo}"/>' + 

       '</a>' + 
      '{{/each}}' + 
      '</script>'; 

Я использую jquery.tmpl.min.js. Что делать, чтобы использовать переменную в условии if?

+0

Мне нужно еще немного ввода. 1. Какие рамки вы используете? 2. Пожалуйста, укажите полную строку tmp, иначе я не могу найти ошибку. –

+0

@ chris.tian Я использую версию jquery 1.10.2. И я обновил свой вопрос – cagin

+0

Еще его не очень понятно. Вы используете любую библиотеку для создания шаблонов? –

ответ

1

Для общего подхода к замене переменных в строках JavaScript вы можете получить следующий фрагмент;

var tmp = '<script>' + 
      ... + 
      '<\/script>' 
      .replace('${isActive}', isActive) 
      .replace('${isPassive}', isPassive) 
      .replace('${isGuest}', isGuest) 

Для получения более подробного решения по вашей проблеме нам нужна информация о структуре и механизмах шаблонов, которые вы используете.

EDIT:

Я заметил, что тег закрытия скрипт вызывает ошибку. Возможно, вы захотите избежать закрывающего тега сценария, например:

<\/script> 
+0

Такая же ошибка. Когда я редактировал свой вопрос, я использую jquery.tmpl.min.js. – cagin

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