如何将此javascript转换为jquery?
我有这段代码,但我不确定如何将其转换为jquery,因为我使用如何将此javascript转换为jquery?,javascript,jquery,Javascript,Jquery,我有这段代码,但我不确定如何将其转换为jquery,因为我使用check变量来查看if语句中的内容是否至少发生过一次gph\u img\u list是许多单选按钮的名称标签 var check = false; for (var i=0; i < gph_img_list.length; i++) { if (gph_img_list[i].value == var_gph_img.innerHTML) { gph_img_lis
check
变量来查看if
语句中的内容是否至少发生过一次gph\u img\u list
是许多单选按钮的名称标签
var check = false;
for (var i=0; i < gph_img_list.length; i++) {
if (gph_img_list[i].value == var_gph_img.innerHTML) {
gph_img_list[i].checked = true;
check = true;
break;
}
}
if (!check) {
var_gph_img.innerHTML = "";
}
var检查=false;
对于(var i=0;i
我不确定将其转换为jQuery会带来什么好处,但根据您所展示的内容,在可行的情况下,使用jQuery应该可以完成相同的任务:
var text = $(var_gph_img).html();
var check = false;
$(gph_img_list).each(function() {
if (this.value == text) {
check = true;
$(this).prop("checked", true);
return(false); // stop the .each() loop
}
});
if (!check) {
$(var_gph_img).html("");
}
如果您想更有效地执行此操作,您必须向我们展示您的HTML,这样我们就可以设计jQuery选择器来完成大部分工作。使用功能
var check = $(gph_img_list).filter(function (index, element) {
return element.value === var_gph_img.innerHTML;
}).first().attr("checked", true).length > 0;
if (!check) { var_gph_img.innerHTML = ""; }
这里有一个,其中没有选中复选框,因为文本不匹配。(将div中的“a”更改为x、y或z以查看差异)
这里有一个复选框,其中选中了一个复选框,因为文本不匹配。你说的“将其转换为jQuery”是什么意思?如何/为什么将bool变量转换为jQuery?var\u gph\u img与什么有关?@Lance,这是我用来存储字符串的span标记value@glosrob,我的意思是转换整个代码。我希望使用一些jquery循环代码来遍历所有具有与gph_img_列表相同的name属性的无线电标记。并且仍然检测if条件是否发生过一次。OP的代码仅设置要检查的第一个匹配项。您的代码设置了要检查的所有匹配项。您需要仔细查看OP代码的作用。您的代码不能完成相同的任务。您的代码现在不检查任何项目,并清除错误项目的HTML。它仍将多个项目设置为检查。OP的代码仅将第一个匹配项设置为选中。这不会使单选按钮处于选中状态checked@omega在我的答案中添加了两个提琴,以证明复选框确实被选中。你能创建一个小提琴来展示你的场景吗?@BartRiemens:OP特别要求使用jQuery,所以我想这就是为什么在回答中提到的“任何可行的地方”都使用它的原因。我觉得你的编辑让事情变得更高效了。虽然我想如果jfriend00不介意的话,我的反对是没有意义的。@BartRiemens-我收回了你的编辑。我不认为你应该彻底改变我的代码。编辑通常是为了修正错误或添加澄清,而不是强加您对代码应该如何编写的意见。您可以自由编写自己的答案,也可以就改进我的代码提出意见,我将根据您的反馈决定是否更改我的答案。做出这么多的改变,甚至不留下任何关于你做了什么以及为什么做的评论,这也是一种偷偷摸摸的行为。如果科林没有发表评论,我可能就看不到编辑了。谢谢你的帮助,科林。令人惊讶的是,该编辑获得了2张赞成票。@Colin为什么会令人惊讶?这难道不是社区提供的关于堆栈溢出的最好答案吗?我看不出这里有什么问题,为什么不允许我提出一些改进建议(以及一条更改消息)。很多开发人员只会复制这样的代码片段,所以让我们确保它是最好的代码。无论如何谢谢,干杯@巴特里门斯:我对编辑的反对是双重的,上面提到过。1.)在我看来,将某些特定于jQuery的代码还原为其与普通JS等效的代码并不符合问题的要求(不管这样做有什么好处)。这个问题特别要求帮助将vanilla JS转换为它的jQuery等价物。2.)这是上面提到的,即编辑通常是为了澄清或错误,而不是根据您的个人意见重写代码。无论如何,以上只是我的意见,我当然很欣赏你对改善社区的看法!:)