2014-01-06 29 views
-1

我想在內部html中傳遞參數。在java腳本中傳遞內部html參數

function func() { 
    var ul = document.getElementById("section"); 
    var newLI = document.createElement("LI"); 
    ul.appendChild(newLI); 
    var ch = 'kuldeep'; 
    newLI.innerHTML = "<a href='javascript:void(0)' onclick='itemcustom(ch)'>Click Me </a>"; 
} 

請指教如何在itemcustom函數中添加參數,現在它不接受任何參數。

回答

1

現在它呈現爲文本。你必須轉義字符串,像這樣:

"<a href='javascript:void(0)' onclick='itemcustom("+ch+")'>Click Me </a>" 
2

你需要打破字符串文字,插入的變量ch這樣:

function func() { 
    var ul = document.getElementById("section"); 
    var newLI = document.createElement("LI"); 
    ul.appendChild(newLI); 
    var ch = 'kuldeep'; 
    newLI.innerHTML = "<a href='javascript:void(0)' onclick='itemcustom("+ ch +")'>Click Me </a>"; 
} 

這就是所謂的string concatenation,這意味着增加了兩個或更多的字符串合爲一體。

0

爲什麼不只是創建一個合適的元素?

function func() { 
    var ul  = document.getElementById("section"); 
    var newLI = document.createElement("li"); 
    var anchor = document.createElement("a"); 
    var ch  = 'kuldeep'; 

    anchor.href = "#"; 
    anchor.addEventListener('click', function() { 
     itemcustom(ch); 
     return false; 
    }, false); 
    anchor.innerHTML = 'Click Me'; 

    newLI.appendChild(anchor); 
    ul.appendChild(newLI); 
} 

FIDDLE