2011-08-30 171 views
0

我想完成简单的计算几个变量。我需要从jquery更改()似乎并没有工作

<td class="productprice"> 

拿这个值从

<input type="text" class="quantityBox" value="1"/> 

由值乘以而且,我用这一段代码,看看是否值变化重新计算。

$(".quantityBox").change(function(){ 
alert("Asdasd"); 
}); 

没有任何反应。我预计现在会出现警告框,因此我只能确定该更改是否有效。

任何想法?谢谢。

+0

这应该* *工作,是jQuery的包含了'$(文件)。就绪内(函数( ){/ * ... * /});'? –

+1

当输入失去焦点时,文本框的'change'事件触发。你有没有尝试点击页面上的其他地方? –

回答

4

绑定文档就绪事件中的更改功能。

喜欢的东西:

$(function(){ 
    $(".quantityBox").change(function(){ 
     alert("Asdasd"); 
    }); 
}); 

注:我假设你正在Tab键/移出文本框,看是否改变功能被解雇。

2

假设你已经附加了处理程序,一旦DOM准备好了,那应该可以工作。

请注意,change事件不会触发,直到焦点有的文本框。

1

您的代码适用于我:http://jsfiddle.net/8RsXF/

如果你想要做的每一个按键使用keyup后计算:

$(".quantityBox").keyup(function(){ 
    alert("Asdasd"); 
}); 

http://jsfiddle.net/8RsXF/1/

+0

jQuery不支持输入事件(优于keyup)吗? – Neil

+0

@Niel:什么'input'事件?哪里做*你有'input'事件,为什么它优于'keyup'?使用'keyup'唯一的缺点是它不会在你粘贴东西的时候触发,你可以通过'$('selector')轻松地包含它。bind('keyup,paste',function(){... });)'。 –

+0

为什么要处理一些可能导致或不可能导致字段值更改的事件,如果您可以绑定一个旨在表明用户已更改值的事件? – Neil