gpt4 book ai didi

jquery 获取数组复选框

转载 作者:行者123 更新时间:2023-12-01 07:02:20 35 4
gpt4 key购买 nike

我的文档中有 2 个复选框数组。一种是 engines[],一种是 searchId[]

$("input:checkbox[@name='searchId[]']:checked").each(function() i use this to capture all the values from the searchId[] checkboxes (only if checked).
$("input:checkbox[@name='engines[]']:checked").each(function() same thing for engines

问题是选择器会获取文档中所有选中的复选框,无论其名称如何。我怎样才能让它只得到我想要得到的数组?

一些用于更好理解的代码:

$("#startSearch").live("click", function(event){
//event.preventDefault();
$("input:checkbox[@name='searchId']:checked").each(function(){

$.getJSON("startsearch.php",{searchId: $(this).val()},function(data){
alert($(this).val());
$('#status_' + $(this).val()).text(data.status);
$('#results_' + $(this).val()).text(data.results);
$('#date_' + $(this).val()).text(data.date);
$('#totalResults_' + $(this).val()).text(data.totalResults);
});
});
});

$("#submit").click(function(event){
event.preventDefault();

$("input[@name='engines[]']:checked").each(function(){

$.getJSON( "addsearch.php", { inputString: $('#inputString').val(),searchString: $('#searchString').val(), engine: $(this).val() }, function(data){
//$('#searchTable tbody tr:first').empty();
var row = '<tr><td><span id ="status_'+data.id+'">'+data.status+'</span></td>'+
'<td>'+data.search+'</td>'+
'<td>'+data.category+'</td>'+
'<td>'+data.engine+'</td>'+
'<td><span id = "results_"'+data.id+'">0</span></td>'+
'<td><span id ="date_'+data.id+'">'+data.date+'</span></td>'+
'<td><span id ="totalResults_'+data.id+'">0</span></td>'+
'<td style="width: 96px;"><div class="actions"><ul>'+
'<li><input class="radio" name="searchId[]" type="checkbox" value="'+data.id+'" /></li>'+
'<li><a class="action1" href="#">1</a></li>'+
'<li><a class="action4" href="#">4</a></li>'+
'</ul></div></td>';
$('#searchTable tbody').after(row);
});
});

});
});

最佳答案

  1. @attr选择器在 jQuery 1.3 上被完全删除,如果您使用的是 jQuery 版本 > 1.2,只需删除 @从选择器中签名。
  2. []字符需要双重转义。

    $("input:checkbox[name='searchId\\[\\]']:checked").each(function () {
    //..
    });

来自docs :

In jQuery 1.3 [@attr] style selectors were removed (they were previously deprecated in jQuery 1.2). Simply remove the '@' symbol from your selectors in order to make them work again.

need to be escaped 的字符的完整列表:#;&,.+*~':"!^$[]()=>|/

关于jquery 获取数组复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2106027/

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