我正在尝试做一个简单的递增计数器。 由于某种原因,我无法让javascript定位到正确的元素。 我目前正在尝试使用jQuery。
这是我的html
/p>
"http://www.w3.org/TR/html4/loose.dtd">
New Web Project
2,3,4,5,6 |
10,J,Q,K,A |
和我的go.js:
function modCount(val){
var CC = $("count").value;
alert($("count").value);
var NewCount = parseInt(CurrentCount,10) + val;
$("count").value = NewCount;
return NewCount;
};
我究竟做错了什么? 警报不断说$(" count")的值未定义。
你错了很多
var CC = $("count").value;
在jquery中按ID定位时,请以#为前缀,获取字段值的方法为val()。改成
var CC = $("#count").val();
var NewCount = parseInt(CurrentCount,10) + val;
您调用了变量CC而不是CurrentCount。改成
var NewCount = parseInt(CC,10) + val;
(很好的工作提供了parseInt的基数-那里是满分!)
$("count").value = NewCount;
再次提供哈希值,设置值的方法也是.val()。改成
$("#count").val(NewCount);
return NewCount;
无需返回值,您永远不会使用它-只需删除此行即可。
工作样本:
function modCount(val){
var CC = $("#count").val();
var NewCount = parseInt(CC,10) + val;
$("#count").val(NewCount);
};
2,3,4,5,6 |
10,J,Q,K,A |
更改
$("count")
至
$("#count")
...即您的意思是按ID定位,这意味着选择器以#为前缀
使用jQuery,当出现问题时,请始终使选择器成为您的第一个怀疑对象。您可以通过运行来检查它们是否匹配任何内容
alert($('your-selector-here').length);
如果给出0,则选择器错误,或者代码在元素位于DOM中之前运行。
^是的-当我登录时说同样的话!
有人拒绝了我。 不知道为什么!
我猜这不是我的DV,因为您只是摸索出了什么毛病!
是啊,你说得对。 我赶紧去看选择器问题,所以我懒洋洋地认为那是所有错误的信息(如果经常出现的话)。