我從innerHTML
屬性調用帶有一個參數的函數,但什麼也沒有顯示這href屬性參數的函數是我的代碼:調用帶有
var myVar="Ali";
summaryPanel.innerHTML += "<a href='javascript:sayHello("+ myVar+");'>" + "Say Hello" + "</a>";
function sayHello(myVar)
{
window.alert(myVar);
}
我從innerHTML
屬性調用帶有一個參數的函數,但什麼也沒有顯示這href屬性參數的函數是我的代碼:調用帶有
var myVar="Ali";
summaryPanel.innerHTML += "<a href='javascript:sayHello("+ myVar+");'>" + "Say Hello" + "</a>";
function sayHello(myVar)
{
window.alert(myVar);
}
試試這個:
var a = document.createElement('a');
a.appendChild(document.createTextNode('Click me'));
a.addEventListener('click', function() {
sayHello(myVar);
}, false);
summaryPanel.appendChild(a);
一些注意事項:
myVar
的情況)。這種做法很容易被html注入。htmlElement.innerHTML += something
。這將刪除添加到先前的元素的所有數據和事件處理程序內htmlElement
試試這個
var myVar = "Ali";
summaryPanel.innerHTML += "<a href='javascript:void(0)' onclick='sayHello("+myVar+")' />";
function sayHello(param){
windows.alert(param);
}
您的解決方案與OP的代碼具有相同的問題。 – 2014-09-01 17:29:45
你需要有該功能的觸發器。現在你所做的只是創建一個HREF,沒有實際的觸發器,也沒有結束標記。 – durbnpoisn 2014-09-01 17:06:53
假設鏈接可以被點擊並被點擊:看看控制檯。你會看到一個錯誤。提示:字符串文字,引號。 – 2014-09-01 17:09:28