所以我有一个函数,其中一个div的文本替换另一个div, 我得到的代码工作正常,但我想知道是否有一个很好的动态方式来抽象代码,所以我得到一个更短的代码片段,因此我不必为每个“对”div重复代码?
我的JS:
var correctAnswer1 = $('#q1').text();
$('#c1').text(correctAnswer1);
var correctAnswer2 = $('#q2').text();
$('#c2').text(correctAnswer2);
var correctAnswer3 = $('#q3').text();
$('#c3').text(correctAnswer3);
答案 0 :(得分:1)
如果你已经知道对的数量,你可以这样做:
var numberOfQuestions = 5;
for(i = 0; i < numberOfQuestions; i++)
{
var answer = jQuery("#q"+i).text();
jQuery("#c"+i).text(answer);
}
答案 1 :(得分:1)
将所有#qN
元素设为question
类。
$(".question").each(function () {
var cid = "#c"+$(this).attr("id").substr(1);
$(cid).text($(this).text());
});
答案 2 :(得分:0)
我这会工作
function setTxtVal(id){
if(typeof id == "string"){
var sec = id.charAt(id.length - 1);
$("#c"+sec).text( $("#"+id).text() )
}
if(typeof id == "object"){
var x ,s;
for (x in id) {
var s = x.charAt(x.length - 1);
$("#c"+s).text( $("#"+x).text() )
}
}
setTextVal("c1")
或
setTextVal(["c1", "c3", "c4"])
或者你可以制作一个jquery插件
答案 3 :(得分:0)
$('[id^=q]').each(function(index){
$('#c' + index).html($(this).html());
});
像这样的东西