我有這兩個HTML表單按鈕與每個關聯的onclick動作。比較使用javascript的兩個html按鈕的onclick動作
<input type=button name=sel value="Select all" onclick="alert('Error!');">
<input type=button name=desel value="Deselect all" onclick="alert('Error!');">
不幸的是,這個動作會不時變化。它可以是
onclick="";>
或
onclick="alert('Error!');"
或
onclick="checkAll('stato_nave');"
我想如果需要寫一些JavaScript代碼驗證什麼是調用的函數,並改變它:
var button=document.getElementsByName('sel')[0];
// I don't want to change it when it is empty or calls the 'checkAll' function
if(button.getAttribute("onclick") != "checkAll('stato_nave');" &&
button.getAttribute("onclick") != ""){
//modify button
document.getElementsByName('sel')[0].setAttribute("onclick","set(1)");
document.getElementsByName('desel')[0].setAttribute("onclick","set(0)");
} //set(1) and set(0) being two irrelevant function
Unfortuna完全沒有這項工作。 去背一些步驟,我注意到
alert(document.getElementsByName('sel')[0].onclick);
不輸出的onclick內容,如我所料,但產出:
function onclick(event) {
alert("Error!");
}
,所以我想的是,比較失敗,因爲這個原因,我不能比較一個function
與一個string
。
有沒有人猜測如何區分哪個函數與onclick
屬性關聯?
這將幫助你,但它是基於jQuery的http:/ /stackoverflow.com/questions/5343832/change-value-of-onclick-function-vars – VirtualTroll 2011-05-25 18:49:19