<form id="QandA" action="<?php echo htmlentities($action); ?>" method="post">
<table id="question">
<tr>
<td colspan="2">
<a onclick="return plusbutton();">
<img src="Images/plussign.jpg" width="30" height="30" alt="Look Up Previous Question" class="plusimage" id="mainPlusbutton" name="plusbuttonrow"/>
</a>
<span id="plussignmsg">(Click Plus Sign to look up Previous Questions)</span>
</td>
</tr>
</table>
</form>
在上面的代码中,当满足if语句时,我可以用另一个图像替换图像。但我的问题是,当图像被替换时,它不会禁用点击事件。我的问题是,当替换图像时,如何禁用onclick事件onclick="return plusbutton();
?
答案 0 :(得分:4)
您在plusbutton
功能本身内禁用。首先,将元素传递给函数,如下所示:
<a onclick="return plusbutton(this);">
然后在函数中禁用它:
function plusbutton(element) {
element.onclick = '';
/* then do whatever plusbutton did before */
}
但是因为你使用的是jQuery,所以最好使用处理程序。所以给链接一个id但不是onclick,如下所示:
<a id="plusbutton" href="#">
并使用jQuery.one()绑定仅发生一次的点击处理程序:
$(document).ready(function() {
$('#plusbutton').one('click', function(ev) {
plusbutton();
return false;
});
});
答案 1 :(得分:1)
event.preventDefault();
将阻止元素继续其正常功能。
答案 2 :(得分:0)
试试这段代码:
$('#addQuestionBtn').bind("click",function(){
$('#addQuestionBtn').unbind("click");
insertQuestion(document.form);
});
你的HTML:
<input id="addQuestionBtn" name="addQuestion" type="button" value="Add Question" />