单选按钮检查的属性未更改

Radio button checked property not changing

本文关键字:属性 检查 单选按钮      更新时间:2023-09-26

我有一个div,我在其上附加了一个具有radio类型的inputtable。渲染后,当我单击它时,它的选中属性没有改变。可能是什么问题?

<input type="radio" id="radHalf0" name="grp0" class="half">

更新1

我使用Jquery.Ajax创建Markup,如下

 $.ajax({
                    type: "POST",
                    url: "Leave-Application.aspx/CreateTable",
                    data: "{'dates':'" + formattedDateArray + "'}",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (msg) {
                        $("#tblLeaveDetails").html("");
                        $("#tblLeaveDetails").append(msg.d);
                        $("#divLeaveDetails").fadeIn();
                        $("#divTotal").fadeIn();
                    }
                });

[WebMethod]
        public static string CreateTable(string dates)
        {
            string[] dateArray = dates.Split(',');
            StringBuilder markup = new StringBuilder("<table class='table table-striped table-hover table-bordered' style='width: 435px'>");
            markup.Append(@" <tr> <th>Date</th> <th>Half Day</th> <th>Full Day</th></tr>");
            for (int i = 0; i < dateArray.Length; i++)
            {
                string rowid = dateArray[i].Replace('/', '-');
                markup.Append(" <tr id = " + rowid + "> <td>" + dateArray[i] + "</td>");
                markup.Append("  <td><input type='"radio'" id='"radHalf" + i + "'" name='"grp" + i + "'" class='"half'"/></td>");
                markup.Append("  <td><input type='"radio'" id='"radFull" + i + "'" name='"grp" + i + "'" class='"full'"/></td></tr>");
            }
            markup.Append("</table>");
            return markup.ToString();
}

如果您使用的是一个单选框,它不会改变。如果您正在使用single,请将其更改为复选框。此外,如果你有多个无线电盒子,请确保它们有相同的名称。

您正在创建具有不同ID(以及名称)的单选按钮。由于只有一个具有该Id和名称的单选按钮,因此无法取消选择。删除您为Id和name附加的+i+。如果所有这些都是不同的,并且可以选择和取消选择,则使用复选框而不是单选按钮。