在一个JS源代码中,我找到了这个结构:
$(function(){
$("form").submit(function(event){
var textInputs=$(">input[type='text']", $(">", this)[1]);
for(var i=0; i<textInputs.length; i++){
我完全理解那里发生了什么,但我不清楚这一行:
var textInputs=$(">input[type='text']", $(">", this)[1]);
答案 0 :(得分:2)
代码使用$(selector, context)
。 $(">", this)
选择this
对象的子项,[1]
将第二个子项作为原始DOM元素返回。然后,它将返回的值(也可以是undefined
值)传递给另一个$(selector, context)
作为选择input[type=text]
子项的上下文。
对我而言,代码是不可读和可维护的。它(某种程度上)相当于:
$(function() {
$("form").submit(function(event) {
$(this).children(":eq(1)")
.children('input[type="text"]')
.each(function(index, element) {
// ...
});
// ...
答案 1 :(得分:0)
看起来像jquery,它就是
$('dom elements to look for', 'dom context element')
答案 2 :(得分:0)
第一个参数是选择器,第二个参数是上下文
$('selector', 'context');
在这种情况下,选择器受到限制,只会匹配上下文的后代。
这相当于find
方法:
$('context').find('selector');
两者都会得到相同的结果。