gpt4 book ai didi

javascript - 如何使用 jquery 重新排序表单字段

转载 作者:行者123 更新时间:2023-11-30 10:47:08 27 4
gpt4 key购买 nike

我有一个 PHP 页面,其表单如下:

<form class="form3">
<label class="form3"><input type="checkbox"> Item-1</label>
<label class="form3"><input type="checkbox"> Item-2</label>
<label class="form3"><input type="checkbox"> Item-3</label>
<label class="form3"><input type="checkbox"> Item-4</label>
<label class="form3"><input type="checkbox"> Item-5</label>
</form>

我有这样设置的 javascript 变量:

var checked = ["", "yes", "", "yes", ""];

现在,当页面加载时,我想检查选中的值是否为"is",然后我想将这些输入项放在列表的第一位,然后再放置其余的,如下所示:

<form class="form3">
<label class="form3"><input type="checkbox" checked="checked"> Item-2</label>
<label class="form3"><input type="checkbox" checked="checked"> Item-4</label>
<label class="form3"><input type="checkbox"> Item-1</label>
<label class="form3"><input type="checkbox"> Item-3</label>
<label class="form3"><input type="checkbox"> Item-5</label>
</form>

我想,jQuery 将是实现这一目标的方式。这意味着,我将需要遍历表单字段(我不确定如何)并在循环内部检查相应的变量是空白还是"is",如果是,则打印该表单字段。然后再次执行相同的循环并打印相应变量为空的所有字段。

希望逻辑是正确的。

我可以像这样遍历表单元素:

$.each($('.form3'),function(i,e){
if(checked[i] == "")
{
e.appendTo($('.form3'));
}
});

但是显然,appendTo 行给我错误:

Uncaught TypeError: Object #<HTMLLabelElement> has no method 'appendTo'

所以,现在我需要知道如何在循环时选择每一行并重新排序。

谢谢

最佳答案

试试这个:

$('.form3').each(function(i,e) {

if(checked[i] == "") {

$(this).find('input[type=checkbox]').attr('checked', true);
$(this).appendTo($('form'));

}

});

关于javascript - 如何使用 jquery 重新排序表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7658508/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com