显示console.log中复选框的值

时间:2017-04-05 08:44:37

标签: javascript jquery checkbox

这可能是一个简单的问题,但我已经把这个问题解决了。我想在array中显示一个复选框的值,这样我就可以用它来激活一个AJAX调用。但每个复选框的值都是相同的(第一个)。

我已经花了一些时间在谷歌和我阅读那里,我应该把复选框放在<!-- 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'>&nbsp;&nbsp;".$name." </form> </div>"; } } ?> <!-- /Custom taxonomy checkboxes --> 。但我似乎无法让它发挥作用。这是我目前的代码。

$('.checkIt').change(function(e) {
    var value = $(this).val();
    $.post('../wp-content/themes/mysite/includes/search-team-wp.php',{value:value}, function(data){
        $('#search_results_team').hide().fadeIn(1100);
         $("#search_results_team").html(data);
         console.log(value);
    });
});
  number = number + "60149041982"

    let url = "http://api.appname.my/sendSms.php?message=hello&phone=\(number)"

    Alamofire.request(url).response{ (responseObject) -> Void in
    print(responseObject)

    }

});     

一切正常,即使是AJAX调用,除了console.log输出,所以我不能通过AJAX调用发送不同的值。任何帮助都会非常好!

5 个答案:

答案 0 :(得分:2)

问题是因为您在.checkIt事件中的选择器中选择了所有 change个元素。当你在元素集合上调用val()时,jQuery将只返回第一个元素的值。

要解决此问题,您只需获取引发change事件的元素的值。为此,请在处理程序中使用this关键字:

var value = $(this).val();

答案 1 :(得分:2)

使用

var value = $(this).val();

答案 2 :(得分:1)

尝试下面给出的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)
                    }
    })

答案 3 :(得分:0)

您可以使用

$('.checkIt').is(':checked')

这将为您提供复选框。

答案 4 :(得分:0)

复选框的Jquery.val()始终返回...您定义的值,尽管已选中状态。

如果你需要像检查返回值那样的东西,否则返回undefined你应该这样做:value = $('.checkIt:checked').val();