我通过一个解决方案找到了另一个类似的问题,但它对我不起作用。我是jquery的新手,所以提前感谢我帮助我解决我的noobie问题。
我正在尝试使用变量作为类名。这样我就可以根据这个变量遍历正确的字段。我的变量返回.reqfields4
,但是我收到此错误Error: Syntax error, unrecognized expression: "
,如果我手动输入值,它就会起作用。
我怎样才能做到这一点?感谢。
var reqsection='\".reqfields4\"';
$(".reqfields4").each ( function() {
//$(reqsection).each ( function() {
if(( $(this).val())==''){
some code...
}
else{
some code...
}
});
答案 0 :(得分:1)
您不需要变量值内的引号:
var reqsection = '.reqfields4';
$(reqsection).each( ... );
如果您有班级名称 - 只是班级名称 - 您可以添加.
:
var reqsection ='reqfields4';
$('。'+ reqsection).each(...)
答案 1 :(得分:1)
只需将var reqsection='\".reqfields4\"';
更改为var reqsection='.reqfields4';
- 您不需要内部字符串引号。
答案 2 :(得分:0)
如果你说var reqsection= '\".reqfields4\"';
然后
$(reqsection).each( function() {});
就像你告诉jQuery一样:
$(' ".reqfields4" ').each( function() {});
换句话说,你说:[现在请选择“.reqfields4”,包括引号]。所有类选择器必须以点(。)开头,但是你刚刚用引号(“)开始你的jQuery选择器,所以当然它根本不起作用(当然它不会尝试选择任何类),并且可能会从jQuery中抛出错误 - 我不认为任何jQuery选择器字符串可以将quotemark(“)作为选择器的实际第一个字符!。
如果你这样做:
var reqsection= ".reqfields4";
$(".reqfields4").each( function() {});
$(reqsection).each( function() {});
以上两行是等效的。
答案 3 :(得分:0)
你可以尝试以下,
var reqsection=".reqfields4";
$(reqsection).each ( function() {
if(( $(this).val())==''){
some code...
}
else{
some code...
}
});