【问题标题】:How to get Checkbox value in MVC asp.net using JQuery如何使用 JQuery 在 MVC asp.net 中获取复选框值
【发布时间】:2014-08-31 10:49:07
【问题描述】:

我有 Java Script,这个创建复选框,我想使用 JQuery 获取那些选定的复选框值。在我的 java 脚本中,我将学生的主题与复选框绑定在一起。当学生选择自己的学科时,我想得到那些学科列表。请有任何解决方案....

我的 Java 脚本是

    <script type="text/javascript">
    function specilizationChange()
    {
        $("#Subjectfield").empty();

        var URL = "/SemesterRegistation/GetSubjects/";
        $.ajax({
            url: URL,
            data: JSON.stringify({ SpecializationID: $("#SpecializationID").val() }),
            cache: false,
            type: "POST",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (response) {

                for (var i = 0; i < response.length; i++) {

                    $("#Subjectfield").append("<input type='checkbox' name='chksub' id='" + response[i].Subject + "'/><label>" + response[i].SubjectName + " </label>");
                    $("#Subjectfield").append("<input type='hidden' value='false' name='" + response[i].Subject + "' />")
                }
            },
            error: function (reponse) {
            }
        });
    }
</script>

【问题讨论】:

    标签: jquery asp.net-mvc checkbox


    【解决方案1】:

    我认为你应该改变你的 javascript 方法,如下所示:

    function specilizationChange() {
    
           $("#Subjectfield").remove();
    
            var URL = "/SemesterRegistation/GetSubjects/";
            $.ajax({
                url: URL,
                data: JSON.stringify({ SpecializationID: $("#SpecializationID").val() }),
                cache: false,
                type: "POST",
                contentType: "application/json; charset=utf-8",
                dataType: "json"
            }).success(function (response) {
                    for (var i = 0; i < response.length; i++) {
    
                        var html = '<li>' +
                                        '<input type="checkbox" name="chksub" class="class" value="' + response[i].Subject + '"/>' +
                                        '<input type="hidden" name="' + response[i].Subject + '" value="false"/>' +
                                   '</li>';                     
    
                       $('#Subjectfield').append(html);
                    }
            }).fail(function() {
            });  
        }
    

    然后您可以连接您的每个主题 ID,如下所示:

    $('#Subjectfield').on('change', 'input[class]', function () {
    
            console.log($(this).closest('li').children('input').attr('value'));
    
     });
    

    【讨论】:

      【解决方案2】:

      尝试这种方式,使用公共类作为复选框,然后使用这个脚本来获取检查 id

      $("#Subjectfield").append("<input type='checkbox' class='sel_subj' name='chksub' id='Example'/><label>Example</label>");
      
      $('#Subjectfield').on('change','.sel_subj',function(){
          if($(this).is(':checked'))
              alert($(this).attr('id'))
      });
      

      【讨论】:

      • 当我单击复选框时,这不会发出任何警报。这是我的 Jquery $(document).ready(function () { $("Subjectfield").on('change', ' .sel_subj', function () { if($(this).is(':checked')) alert($(this).attr('id')) })
      • @KrishanManjula 在附加部分添加类然后使用$("#Subjectfield").on('change','.sel_subj',function(){ 包括#
      • 我已经将该类添加到附加部分......但它不起作用......我认为当我选择 chekbox 时这个 Jquery 不会触发......
      • 这里“Subjectfield”是div id.....
      猜你喜欢
      • 2020-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-04
      • 1970-01-01
      • 2014-03-22
      • 1970-01-01
      • 2018-09-17
      相关资源
      最近更新 更多