我试图将一个变量放在jQuery选择器中。但是我假设我打破了某种形式的语法规则。如果你能发现错误,请告诉我:
var names = ["JakeP97", "Trishy", "Puffs", "Evilgenious", "Joeyc", "TheKid"];
var ballots = ["#book1", "#book2", "#book3", "#book4", "#book5", "#book6"];
function splitName(plName,ballotNum) {
var halfplName = Math.round(plName.length / 2);
var firstplname = plName.substr(0, halfplName);
var lastplName = plName.substr(halfplName, plName.length);
$(ballotNum 'ul.hardcover_front').find('li:nth-child(2)').html(firstplname);
$(ballotNum 'ul.hardcover_back').find('li:nth-child(1)').html(lastplname);
}
for (i=0; i<ballots.length; i++) {
splitName(names[i],ballots[i]);
}
错误发生在以下行:
$(ballotNum 'ul.hardcover_front')
期望的结果是:
一直是$('#book1 ul.hardcover_front')
,$('#book2 ul.hardcover_front')
等。
提前谢谢!
答案 0 :(得分:4)
你需要连接字符串和变量。
$(ballotNum + ' ul.hardcover_front').find('li:nth-child(2)').html(firstplname);
答案 1 :(得分:1)
您错过了+
标志。由于您将变量与字符串连接起来,因此需要使用+
符号:
$(ballotNum + 'ul.hardcover_front')
所以这一行:
$(ballotNum 'ul.hardcover_front').find('li:nth-child(2)').html(firstplname);
$(ballotNum 'ul.hardcover_back').find('li:nth-child(1)').html(lastplname);
将更改为:
$(ballotNum + 'ul.hardcover_front').find('li:nth-child(2)').html(firstplname);
$(ballotNum + 'ul.hardcover_back').find('li:nth-child(1)').html(lastplname);
答案 2 :(得分:1)
$(ballotNum + 'ul.hardcover_front').find('li:nth-child(2)').html(firstplname);
$(ballotNum + 'ul.hardcover_back').find('li:nth-child(1)').html(lastplname);
我想你忘了添加+
。