Javascript 如何使用输入复选框创建/更新数组
在我看来,我正在遍历一个名为Javascript 如何使用输入复选框创建/更新数组,javascript,jquery,html,ruby-on-rails,checkbox,Javascript,Jquery,Html,Ruby On Rails,Checkbox,在我看来,我正在遍历一个名为@同事的客户集合,并将其作为复选框输入显示在列表中,如下所示: <ol> <% @colleagues.each do |c|%> <li> <input type="checkbox"> <%= c.full_name %> <%= c.id %> </input> </li>
@同事的客户
集合,并将其作为复选框输入显示在列表中,如下所示:
<ol>
<% @colleagues.each do |c|%>
<li>
<input type="checkbox">
<%= c.full_name %>
<%= c.id %>
</input>
</li>
<% end %>
</ol>
我想做的是收集数组中每个选中/选定的名称,按下按钮后,这些名称将发送到我的控制器。我的问题是,如何在javascript中创建一个动态数组,以便在取消选中时将同事的id
添加到数组中或删除?
谢谢也许这个例子可以帮助您:
<ul id="featuresOptions" class="options" style="display: block;">
<li><label><input type="checkbox" name="Apartment" value="6"> Apartment</label></li>
<li><label><input type="checkbox" name="House" value="7"> House</label></li>
<li><label><input type="checkbox" name="Lot" value="8"> Lot</label></li>
<li><button class="button" id="featuresButton">Filter</button></li>
</ul>
$(document).on('click', "#featuresButton", function() {
var formData = [];
$("#featuresOptions li input").each(function(e) {
if($(this).is(":checked")) {
formData.push($(this).val());
}
});
});
- 公寓
- 房子
- 很多
- 滤器
$(文档)。在('单击',“#功能按钮”,函数()上{
var formData=[];
$(“#功能选项li输入”)。每个(功能(e){
如果($(this).is(“:checked”)){
formData.push($(this.val());
}
});
});
也许这个例子可以帮助您:
<ul id="featuresOptions" class="options" style="display: block;">
<li><label><input type="checkbox" name="Apartment" value="6"> Apartment</label></li>
<li><label><input type="checkbox" name="House" value="7"> House</label></li>
<li><label><input type="checkbox" name="Lot" value="8"> Lot</label></li>
<li><button class="button" id="featuresButton">Filter</button></li>
</ul>
$(document).on('click', "#featuresButton", function() {
var formData = [];
$("#featuresOptions li input").each(function(e) {
if($(this).is(":checked")) {
formData.push($(this).val());
}
});
});
- 公寓
- 房子
- 很多
- 滤器
$(文档)。在('单击',“#功能按钮”,函数()上{
var formData=[];
$(“#功能选项li输入”)。每个(功能(e){
如果($(this).is(“:checked”)){
formData.push($(this.val());
}
});
});
您可以不用JS,而是使用Rails表单。对你有用吗?还是你坚持要我们给你JS解决方案?让我知道,然后我可能可以帮你,仅供参考,输入是void元素,你的HTML标记没有任何意义。现在要将复选框发送到服务器,请设置value和name属性和(或)或使用表单来包装them@ArupRakshit我想我需要使用JS,因为我需要使用AJAX在控制器之间来回发送信息,而不会丢失视图,因为它不会以表单提交的形式发送到控制器。你可以不用JS,但是使用Rails表单。对你有用吗?还是你坚持要我们给你JS解决方案?让我知道,然后我可能可以帮你,仅供参考,输入是void元素,你的HTML标记没有任何意义。现在要将复选框发送到服务器,请设置value和name属性和(或)或使用表单来包装them@ArupRakshit我想我需要使用JS,因为我需要使用AJAX在控制器之间来回发送信息,而不会丢失视图,因为它不会在表单提交时发送给控制器。这非常有用,谢谢。行$(this.val();正在检索输入标记中指定的值,但我想要的值是id,有没有办法将输入的值设置为@同事的id?是的,如
顺便说一句,如果您坚持我的答案,请勾选为;)太棒了,我简直不敢相信我自己也没想到!谢谢这很有用谢谢你。行$(this.val();正在检索输入标记中指定的值,但我想要的值是id,有没有办法将输入的值设置为@同事的id?是的,如
顺便说一句,如果您坚持我的答案,请勾选为;)太棒了,我简直不敢相信我自己也没想到!谢谢