在这样的代码中:
for(var i=0; i<arSelectedFields.length; i++) {
$("td[class='ms-formlabel']").each(function() {
var txtCol = $.trim($(this).text()); // field name
var fvalue = ""; //field value
if(txtCol == arSelectedFields[i]) {
$("td[class='ms-formlabel'] + td[class='ms-formbody']").each(function() {; // ignoring any field formatting; use html(), if needed
fvalue = $(this).text();
if(fvalue != "") PrintingHTML += "\n<tr><td class='formlabel'>" + txtCol + "</td><td class='xdata'>" + fvalue + "</td></tr>";
else PrintingHTML += "\n<tr><td class='formlabel'>" + txtCol + "</td><td class='xdata'> </td></tr>";
fvalue = "";
}); //each()
return false;
} //else return false;
});
}
我有这样的声明:
$("td[class='ms-formlabel'] + td[class='ms-formbody']").each(....
我真正想要的是
$(this)...td[class='ms-formbody']").each(...
但无法让它工作。换句话说,我只想要td[class='ms-formbody']
当前选择的行中存在的 (基于 的值td[class='ms-formlabel']
)。我能得到的最接近的是我展示的方式,它从顶部开始收集 formbody 元素,而不仅仅是适用于当前选定 formlabel 的元素。
有任何想法吗?