检查是否在javascript中单击了按钮

时间:2012-11-23 05:13:26

标签: prototypejs

如何检查原型javascript中是否点击了按钮?

$('activateButton').observe('click', function(event) 
                                           {
                                                alert(hi);
                                           });

以上代码无效。请帮忙

2 个答案:

答案 0 :(得分:3)

使用此按钮:

<button id="mybutton">Click Me</button>

使用此:

$('mybutton').observe('click', function () {
  alert('Hi');
});

经过测试和运作,here

您可能希望将其封装在document.observe('dom:loaded', function () { })内,以防止它在您的网页加载之前执行。

另外,只是一个解释:

Prototype中的单个美元符号按其ID选择一个元素。 .observe函数与jQuery的.on函数非常相似,因为它用于将事件处理程序绑定到元素。

此外,如果您需要将其作为已经点击的永久性按钮&#39;好吧,试试这个:

$('mybutton').observe('click', function () {
  var clicked = true;
  window.clicked = clicked;
});

然后,如果您想测试按钮是否已被点击,那么您可以这样做:

if (clicked) {
  // Button clicked
} else {
  // Button not clicked
}

如果您尝试制作一个不希望用户多次点击的表单,这可能会有所帮助。

如何在jQuery中执行此操作,仅供参考:

$('#mybutton').on('click', function () {
  alert('Hi');
});

请注意,上面提到的jQuery代码也可以缩短为:

$('#mybutton').click(function () {
  alert('Hi');
});

jQuery在Prototype中更好,因为它将Prototype的$$$函数的用法组合到一个函数$中。这不仅可以通过他们的id选择元素,还可以通过其他可能的css选择方法。

如何使用纯JavaScript进行操作:

document.getElementById('mybutton').onclick = function () {
  alert('Hi');
}

仅供参考,以备不时之需。

答案 1 :(得分:2)

$('body').delegate('.activateButton', 'click', function(e){
  alert('HI');
});