一些jQuery代码看不懂,求指教

lovelsa 2015-10-19 04:03:20
如题,今天看到了两段js代码,表示不懂,请高手指教
代码一:

var $submit = null;
$submit = $('<input id="search_button" type="button" value="查  询">')
.click(function() {
_doSearch($formDiv, $grid);
});
.........................................................................................
..........................................................................................
$submit.trigger("click");

代码二:
var searchField = tdArray[i].attr("name"); // 获得查询字段
var searchOper = tdArray[i].attr("formsopt"); // 获得查询方式
var formrequired = tdArray[i].attr("formrequired"); // 获得查询方式
var searchString = $(tdArray[i].children()[0]).val(); // 获得查询值
if (formrequired)
if (!searchString) {
alert("\"" + _getColNameByName($grid, i) + "\"" + "查询条件必填!");
return;

}

问题一:代码一中,$submit 是表示绑定了单击事件的按钮吗,但是最后的绑定click事件又是怎么回事呢
问题二:代码二中,if语句的条件不是应该是boolean类型的值么,但是这里边直接用了字符串,这是为什么呢
...全文
165 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_23727957 2015-10-20
  • 打赏
  • 举报
回复
triger是触发某个事件。而if语句传字符串是因为这是JavaScript特有的特性。你去看一下JavaScript的类型转换就知道了。
forwardNow 2015-10-20
  • 打赏
  • 举报
回复
JavaScript 中,存在真值和假值的概念, 假值:Null、undefined、""、0、false。其余的都是真值。 当 使用 if ( exp ) {} 语句时,可以认为 真值会被转化为 true,价值会被转化为false; 当 使用 逻辑运行符(&&、||)时,会返回最后计算的那个表达式的值(一般不是 true 或 false) var result = 真值1 && 真值2; //=> result = 真值2; var result = 假值1 && 真值2; //=> result = 假值1; var result = 真值1 && 假值2; //=> result = 假值2;
Go 旅城通票 2015-10-20
  • 打赏
  • 举报
回复
引用 2 楼 lovelsa 的回复:
[quote=引用 1 楼 showbo 的回复:] 问题一是链式调用,执行click绑定后jquery实际返回的是包装后的按钮对象 js和强语言类型不一样,任何内容都可以作为判断条件,下面5个值等价于是javascript的false(第三个是空字符串) Null、undefined、""、0、false
答案竟如此简单,可以详细点么,不是很懂[/quote] 有什么不懂的,jquery除了用val(),attr()获取值或者属性值时,都是返回jquery对象,方便链式调用
lovelsa 2015-10-20
  • 打赏
  • 举报
回复
引用 1 楼 showbo 的回复:
问题一是链式调用,执行click绑定后jquery实际返回的是包装后的按钮对象 js和强语言类型不一样,任何内容都可以作为判断条件,下面5个值等价于是javascript的false(第三个是空字符串) Null、undefined、""、0、false
答案竟如此简单,可以详细点么,不是很懂
Go 旅城通票 2015-10-19
  • 打赏
  • 举报
回复
问题一是链式调用,执行click绑定后jquery实际返回的是包装后的按钮对象

js和强语言类型不一样,任何内容都可以作为判断条件,下面5个值等价于是javascript的false(第三个是空字符串)

Null、undefined、""、0、false
jQuery是一个非常优秀的JS库,与Prototype,YUI,Mootools等众多的Js类库相比,它剑走偏锋,从web开发的实用角度出发,抛除了其它Lib中一些中看但不实用的东西,为开发者提供了优美短小而精悍的类库。其使用简单,文档丰富,而且性能高效,能极大地提高web系统的开发效率。因此可以说是web应用开发中最佳的Js辅助类库之一。大部分开发者正在抛弃Prototype,而选择Jquery做为他们进行web开发的JS库。 如是开发人员仅仅只知道文档中的简单的使用方法,却不明白Jquery的运行原理和内部机制,在使用jquery时,肯定会碰到许多的问题。这些问题有一部分是Jquery的Bug。大部分是自身的使用不当而造成的。而文档的简单的使用说明很难解决问题。在调试基于jQuery的web应用时,很多时候都要跟踪进入jQuery对象分析其运行状态以了解出错的原因。 如果对于web的应用的页面运行性能和效率有所要的话,那么我们更应该去明白其运行机理和核心源码。但是jQuery源码不像其它的类库那样,它有点晦涩,难懂。这就是本源码分析的原因,让所有使用jQuery的读者,能快速上手jQuery的源码,并在开发中得心应用。 Jquery的网络资源丰富,但Baidu了很久,很难找到那种完全深入地分析Jquery源码的文稿。倒是Jquery的开发者,John Resi的《Pro Javascript Techniques》涉及到Jquery的源码的分析,但是其主指还是在于JavaScript的使用。那本书并不能使我们完全细致地了解Jquery的源码。 写个这个源码分析的理由其实很简单,在工作中使用jquery经常出问题,不得不分析其源码,我把分析的源码放在blog。其标题是jquery core 源码分析。结果有一网友竟评论说打到标题党,可见还是有很多人像我这样想完全了解jquery的core代码。 从自己能看懂,到自己写出来。发现自己有一个质的提高。但是由于水平有限,分析过程的难免有错误。请大家多多指教。不过嘴下能留情就最好了。有什么问题可以到blog:jljlpch.javaeye.com去访问和评论。附件附有打包的源码

87,885

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧