jquery
  • html
  • referenceerror
  • 2013-03-13 69 views 0 likes 
    0

    使用jquery的append函數添加標籤。JavaScript中的ReferenceError。在追加函數中未定義的字符

    這裏是jQuery的代碼,其中它的阻止

    tabSections(data).forEach(function(section){ 
        $("#sections nav ul").append("<li id='section_"+section+"' class='list_section' onClick='addText("+section+")'>" + section + "</li>"); 
    }); 
    

    而從瀏覽器的HTML代碼

    <li onclick="addText(287585-C)" class="list_section" id="section_287585-C">287585-C</li> 
    

    當我點擊一個標籤,它會調用該函數addText(部分){}已定義。 我得到的參考錯誤是,它不能識別我傳遞給我的函數作爲一個完整的字符串,但作爲2個數字(減法)。這就是爲什麼會引發一個錯誤,指出C沒有被定義。

    我試圖讓一個HTML代碼應該是這樣的

    <li onclick="addText('287585-C')" class="list_section" id="section_287585-C">287585-C</li> 
    

    ,我如何修改我的javascript代碼,使我有出現在HTML代碼中的2引號(和/或JavaScript將參數解釋爲字符串而不是2個數字)? 一旦我點擊一個標籤,就會出現錯誤

    toString()函數也沒有做任何事情。

    在此先感謝

    回答

    1
    tabSections(data).forEach(function(section){ 
        $("#sections nav ul").append('<li id="section_'+section+'" class="list_section" onClick="addText(\''+section+'\')">' + section + '</li>'); 
    }); 
    

    Didnt運行它...但嘗試它

    +0

    感謝提示,以逃避人物。工作正常 ! – kanadianDri3 2013-03-13 12:18:40

    +0

    真棒,很高興我可以幫助:) – 2013-03-13 12:48:04

    0

    改成這樣:

     $("#sections nav ul").append(
              "<li id='section_'"+section+"'" 
                class='list_section' 
                onClick='addText("'+section+'")>' + section + 
               "</li>"); 
    
    0

    您需要添加字符串分隔符,但有\逃脫他們...

    tabSections(data).forEach(function(section){ 
        $("#sections nav ul").append("<li id='section_"+section+"' class='list_section' onClick='addText(\""+section+"\")'>" + section + "</li>"); 
    }); 
    
    相關問題