需要一些建議。將活動添加到動態HTML
根據我的情況,需要將事件傳遞給span範圍。請幫忙。
這裏是我當前的代碼:
var evt1 = true;
var my_evt = (evt1 ? function() { alert('test'); } : null);
var str = "<span onclick=my_evt></span>";
感謝。
需要一些建議。將活動添加到動態HTML
根據我的情況,需要將事件傳遞給span範圍。請幫忙。
這裏是我當前的代碼:
var evt1 = true;
var my_evt = (evt1 ? function() { alert('test'); } : null);
var str = "<span onclick=my_evt></span>";
感謝。
難道你不能只檢查事件處理程序內部的條件,如果它是假的什麼也不做?
如果你需要有點擊執行一些代碼時evt1
是真的,我會建議只是把代碼中的HTML本身實際跨度onclick
。
<span onclick="if (evt1) { myEvt() }">...</span>
在Javascript中動態構建HTML通常會「憤怒飢餓的人」。尤其是如果HTML本身包含更多的Javascript。這有點噩夢。
但是,如果你的心臟設置就可以了,下面是做這件事:
var str;
if (evt1) {
str = "<span onclick=\"function() { alert('test'); } \"></span>";
} else {
str = "<span></span>";
}
雖然在一般,你必須有一個很好的理由使用這種方法,因爲該字符串必須最終進入HTML文檔纔有用。
您也可以建立串這樣的:
var str = "<span" + (evt1 ? " onclick=\"function() { alert('test'); }\"" : "") + "></span>";
但同樣,這就是 - 什麼都不缺可怕編碼風格。
什麼範圍? HTML代碼在哪裏? – aaaidan 2012-03-30 04:05:22
var str =' – user1215811 2012-03-30 04:05:27
對不起,當我第一次嘗試發佈我的HTML代碼消失。 – user1215811 2012-03-30 04:06:06