【发布时间】:2011-05-25 18:32:37
【问题描述】:
我有这两个 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
不幸的是,这些都不起作用。 回顾一些步骤,我注意到
alert( document.getElementsByName('sel')[0].onclick);
没有像我预期的那样输出onclick内容,而是输出:
function onclick(event) {
alert("Error!");
}
所以我猜想比较失败是因为这个原因,我无法将function 与string 进行比较。
有没有人猜测如何区分哪个函数与onclick 属性相关联?
【问题讨论】:
-
这将对您有所帮助,但它基于 jquery stackoverflow.com/questions/5343832/…
标签: javascript html function onclick compare