javascript笔记
2015-12-09 16:03
591 查看
我已经不是第一次遇到像要判断对象是否存在了,依据对象是否存在做相应的处理,比如
同理,我们试验一下,判断id="tid" 的标签是否存在的语法是
说明jQuery进行了一定的封装,想用这条语句是不行的,因此我们改成js原生的
如果tid对应的标签不存在,alert(tid)是null,如果存在,则是[Object HtmlInputElement]
在多个浏览器上测试:
chrome:通过
FileFox:通过
IE:通过
总结
用
使用jquery的val时
var hasSomething ="0"; if(jQuery("#tid").val()){ hasSomething="1" }之前一直没有记录,第二次需要这种判断的时候就拿不准这么写是否正确
<!DOCTYPE html> <html> <head> <script src="/jquery/jquery-1.11.1.min.js"> </script> <script> $(document).ready(function(){ $("p").click(function(){ if($("#tid").val()){ $(this).hide(); } }); }); </script> </head> <body> <input type="hidden" id="tid"> <p>如果您点击我,我会消失。</p> <p>点击我,我会消失。</p> <p>也要点击我哦。</p> </body> </html>上面的html代码里面进行了这种判断,语句是
if($("#tid").val()){ $(this).hide(); }判断的依据是tid的值是否存在
<input type="hidden" id="tid" value="1">如果tid有值,且不为空串时,会执行if块里面的代码,如果仅声明了id="tid" ,而没有value属性,或属性是"",是不会进入if块的
同理,我们试验一下,判断id="tid" 的标签是否存在的语法是
alert($("#tid")); if($("#tid")){ $(this).hide(); }如果没有声明这个标签,alert出来的结果是[Object Object],他并不是空的
说明jQuery进行了一定的封装,想用这条语句是不行的,因此我们改成js原生的
var tid=document.getElementById("tid"); alert(tid); if(tid){ $(this).hide(); }这样判断是可行的,如果存在tid标签会进入if块,如果不存在,不会进去if块
如果tid对应的标签不存在,alert(tid)是null,如果存在,则是[Object HtmlInputElement]
在多个浏览器上测试:
chrome:通过
FileFox:通过
IE:通过
总结
用
if(document.getElementById("tid")){ }判断标签是否存在
使用jquery的val时
if($("#tid").val()){ $(this).hide(); }既判断了标签是否存在,还判断了值,当且仅当标签存在,且有value,且value不是""时,返回true
相关文章推荐
- 【翻译】使用Sencha Ext JS创建美丽的图画(1)
- 蜗牛—JSONJ学习ava转变
- 【翻译】使用Sencha Ext JS创建美丽的图画(1)
- 【翻译】使用Sencha Ext JS创建美丽的图画(1)
- 【翻译】使用Sencha Ext JS创建美丽的图画(1)
- jsp出现错误can not find the tag directory /web-inf/tags
- json在线转Bean
- D3.js 参考资料整理
- JavaScript表单验证
- js 新增的方法
- js常用的code
- Three.Js教程
- JS跨域设置和取Cookie
- json集合取值
- 廖雪峰javascript教程学习笔记
- javascript Date 日期对象
- 禁止button提交但是不禁止js提交
- 学习笔记代码,js 之构造函数
- fastjson排序问题-如何改变fastjson的排序规则
- JavaScript随机排序算法1