2012-03-02 3 views
0

У меня есть этот файл нефританефрита не выполняет JavaScript функции

- if (transactions != "") 
    table 
     th Site Name 
     th Deadline 
     th Delete Transaction 

     each item in transactions 
      tr 
       td= item.item_name 
       td 
        span(id='countdown'+item.timeout)= item.timeout 
       td 
        span(style='cursor: pointer;', onclick='deleteTransaction('+item.uniqueId+')')= "X" 

    button(id='confirmButton', onclick='confirm();', value="Confirm", name="Confirm")= "Confirm" 
    script 
     fillCountdown(transactions); 

Я не понимаю, почему функция fillCountdown в последней строке не вызывается. Я должен сказать, что эта страница загружается в расширение Chrome во всплывающем окне, но я думаю, ничего не меняется.

Может кто-нибудь мне помочь? Благодарю.

+0

Посмотрите на HTML, созданный этим шаблоном нефрита. Может быть, это даст вам представление. – jammon

+0

HTML не показывает тег 'script' вообще, я уже проверил это, прежде чем спрашивать здесь. И JavaScript не дает никакой ошибки вообще. – Masiar

+1

try script (type = "text/javascript") –

ответ

3

Проблема заключается в том, что в отпечатке используется нефрит. После тега скрипта вам нужно дать два отступа пространства, а затем определить функцию. Например, для: например,

body 
    script(type='text/javascript') 
    function something() { 
    alert("Inappropriate Value") 
    } 

Также проверьте, правильно ли отпечатан тег сценария с тегом body. Если вы определяете функцию внутри тега скрипта, проверьте, что тег скрипта находится только на одном уровне с тегом body. В вашем фрагменте кода неясно, если тег скрипта вложен внутри «if» или правильно выровнен с тегом тела. Когда я скопировал фрагмент кода, ваша функция «fillCountdown» была отступом с 4 пробелами с тегом сценария. В нефритовом углублении есть два пробела. Надеюсь, это решает вашу проблему.