[英]Attribute Starts With Selector [name^=value]
我需要按名称匹配一些输入字段。 该名称由基本名称和方括号组成,因此PHP解释程序将其转换为数组。 根据jQuery API,我可以使用以下选择器:
":input[name^=foo\\[]"
(可以忽略右括号。)但是,它与任何元素都不匹配。 其他变化会触发一个异常,我无法正常捕获。 我想念什么?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript"><!--
jQuery(function($){
// Expected result: 4
var found = [];
// 5
found.push($(":input[name^=foo]").size());
// uncaught exception: Syntax error, unrecognized expression: ]
//found.push($(":input[name^=foo[]").size());
// undefined
try{
found.push($(":input[name^=foo[]").size());
}catch(e){
found.push("Exception: " + e.description);
}
// uncaught exception: Syntax error, unrecognized expression: ]
//found.push($(":input[name^=foo\[]").size());
// undefined
try{
found.push($(":input[name^=foo\[]").size());
}catch(e){
found.push("Exception: " + e.description);
}
// 0
found.push($(":input[name^=foo\\[]").size());
alert("Items found:\n" + found.join("\n"));
});
//--></script>
</head>
<body>
<p><input type="text" name="foo[-1]" value="A"></p>
<p><input type="text" name="foo[0]" value="B"></p>
<p><input type="text" name="foo[1]" value="D"></p>
<p><input type="text" name="foo[]" value="D"></p>
<p><input type="text" name="foobar" value="Z"></p>
</body>
</html>
尝试引用该值:
":input[name^='foo[']"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.