下面是我用jQuery获取我的input元素的代码:
var txt = $(tableRow).find('input:text');
if (txt.value == null) {
//TO DO code
}
Run Code Online (Sandbox Code Playgroud)
这就是我用纯JavaScript做的方式
var txt = document.getElementById('txtAge');
if (txt.value == null) {
//TO DO code
}
Run Code Online (Sandbox Code Playgroud)
第一种方式是txt的值未定义.但是第二种方式是值是输入元素内部的值.现在更有意思的是,在Mozilla Firebug的右下方窗格中,如果我向下滚动到txt的"值",我可以在那里看到它,两种方式.
我知道我可以简单地说$(txt).val(),但我也想知道为什么我不能访问元素的值,如果它被jQuery选中的话.jQuery只是一个JavaScript函数库吗?
.value不是jquery api的一部分.您应该使用.val():
var txt = $(tableRow).find('input:text');
if (txt.val() == "") {
//TO DO code
}
Run Code Online (Sandbox Code Playgroud)
dom对象和jquery dom对象并不完全相同.实际上,您可以打开开发人员工具(在webkit中)或Firebug(Firefox)来检查内部的内容.Jquery拥有更多信息(实际上,它包含它所代表的dom的实例).所以,如果你想使用.value,你需要从jquery对象调用"通用"dom对象,然后使用.value.
| 归档时间: |
|
| 查看次数: |
3813 次 |
| 最近记录: |