Javascript 显示console.log中复选框中的值
这可能是个简单的问题,但我一直在想这个问题。我想在控制台.log中显示复选框的值,这样我就可以用它来触发AJAX调用。但是每个复选框的值都是相同的(第一个) 我在谷歌上花了一些时间,我在那里读到的东西,我应该把复选框放在Javascript 显示console.log中复选框中的值,javascript,jquery,checkbox,Javascript,Jquery,Checkbox,这可能是个简单的问题,但我一直在想这个问题。我想在控制台.log中显示复选框的值,这样我就可以用它来触发AJAX调用。但是每个复选框的值都是相同的(第一个) 我在谷歌上花了一些时间,我在那里读到的东西,我应该把复选框放在数组中。但我似乎无法让它发挥作用。这是我目前的代码 <!-- Custom taxonomy checkboxes --> <?php $taxonomy = 'locatie'; $queried_term = get
数组中。但我似乎无法让它发挥作用。这是我目前的代码
<!-- Custom taxonomy checkboxes -->
<?php
$taxonomy = 'locatie';
$queried_term = get_query_var($taxonomy);
$terms = get_terms($taxonomy, 'slug='.$queried_term);
if ($terms) {
foreach($terms as $term) {
$name = $term->name;
echo "<div class='col-xs-12 col-sm-12 col-md-2 col-lg-2'>
<form id='location'>
<input class='checkIt' type='checkbox' value='".$name."' name='location' id='".$name."_id'> ".$name."
</form>
</div>";
}
}
?>
<!-- /Custom taxonomy checkboxes -->
}));
除了console.log输出之外,一切都正常,即使是AJAX调用,所以我不能通过AJAX调用发送不同的值。任何帮助都会很好 问题是因为您选择了所有。请在更改事件中的选择器中选中它元素。在对元素集合调用val()
时,jQuery将只返回第一个元素的值
要解决此问题,您只需获取引发change
事件的元素的值。为此,请在处理程序中使用this
关键字:
var value = $(this).val();
使用
你可以用
$('.checkIt').is(':checked')
这将给您一个复选框。尝试下面给出的ajax调用
var value = $(this).val();
$.ajax({
type: "POST",
url:'../wp-content/themes/mysite/includes/search-team.php',
dataType: "json",
data: {
value:value
},
success:function(data){
$('#search_results_team').hide().fadeIn(1100);
$("#search_results_team").html(data);
console.log(value)
}
})
复选框的Jquery.val()始终返回。。。您定义的值,无论处于选中状态
如果您希望类似于when check返回值,否则返回undefined,您应该执行以下操作:value=$('.checkIt:checked').val()代码>这样您就能够成功地发布运行回调的数据和事件了?虽然此代码片段可以解决这个问题,但确实有助于提高您发布的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。谢谢。唯一的问题是,当Ajax事件触发时,该值不会显示在console.log中。而#search_results_team
的响应与我的代码不一样?您是否在ajax范围之后对$(“#search_results_team”)执行操作?因为ajax是异步调用,所以下一条语句将在ajax调用完成其操作之前执行。要获取该值,还可以尝试“var obj=$(this);colsole.log语句将类似于console.log(obj.val());
var value = $(this).val();
$.ajax({
type: "POST",
url:'../wp-content/themes/mysite/includes/search-team.php',
dataType: "json",
data: {
value:value
},
success:function(data){
$('#search_results_team').hide().fadeIn(1100);
$("#search_results_team").html(data);
console.log(value)
}
})