このような質問を何十億も読みましたが、まだ答えが見つかりません。
とにかく、私がタイプするとき
var variableContainingID = "header";
var div = $("#"+variableContainingID);
「未定義」を返します
しかし、私が入力すると
var variableContainingID = "header";
var div = $('[id^="'+variableContainingID+'"]');
それは正常に動作します。理由はありますか?
アップデート
var json = '{"divs":['
var children = $(".parent_container > div");
var idArray = [];
var numArray = [];
for (var x=0; x<children.length; x++) {
var eleid = $(children[x]).attr("id");
idArray.push('"'+eleid+'"');
numArray.push(x+1);
}
var idString = idArray.join(",");
var numString = numArray.join(",");
json += idString;
json += '],"number":['+numString+']}';
var obj = JSON.parse(json);
for (x in obj["divs"]) {
var div = $('[id^="'+obj["divs"][x]+'"]');
}
二重引用符がそれを捨てる可能性があると思いますか?