У меня есть две кнопки HTML Form, с каждой из которых связано действие 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
?