使用Javascript函数检查复选框

时间:2012-04-24 13:32:10

标签: javascript jquery html checkbox

如何根据发送到Javascript函数的值选中/取消选中复选框?请check this如何调用 showModalPopup 函数。


我有一个gridview:

<asp:GridView ID="GV1" runat="server" DataSourceID="DS1" >
  <Columns>

    <asp:BoundField HeaderText="ID" DataField="ID"/>

    <asp:TemplateField ShowHeader="False">
      <ItemTemplate>
        <asp:LinkButton ID="Edit_LinkButton" runat="server" CausesValidation="False" >
          <asp:Image ID="Edit_Linkbutton_Image" runat="server" ImageUrl="~/edit.png"></asp:Image>
        </asp:LinkButton>
      </ItemTemplate>
    </asp:TemplateField>

    <asp:TemplateField HeaderText="Status" Visible="False">
      <ItemTemplate>
        <asp:Label ID="Status" runat="server" Text='<%# Bind("Status") %>'></asp:Label>
      </ItemTemplate>
    </asp:TemplateField>

  </Columns>
</asp:GridView>

然后我通过代码隐藏将一个Javascript函数附加到LinkBut​​ton:

Dim myLinkButton As LinkButton

For i As Integer = 0 To GV1.Rows.Count - 1
  Dim CheckBox1 As String = TryCast(GV1.Rows(i).FindControl("Status"), Label).Text

  myLinkButton = DirectCast(GV1.Rows(i).Cells(1).FindControl("Edit_LinkButton"), LinkButton)
  myLinkButton.Attributes.Add("onclick", "shopModalPopup('" & .Rows(i).Cells(0).Text & "', '" & CheckBox1 & "'); return false;")
Next

Rows(i).Cells(0)是Gridview上的第一列,它是“ID”。

然后,调用模态框的Javascript函数是:

<script>
                var grid_modal_options = {
                    height: 450,
                    width: 550,
                    modal: true
                };

                function shopModalPopup(Field1, Check1) {
                    var DataField1 = Field1; //--> ID
                    var CheckField1 = Check1; //--> Status

                    grid_modal_options.open = function () {
                        $('#dialog-form #Textbox1').val(DataField1);
                        $('#dialog-form #Checkbox1').checked = CheckField1;
                    };

                    $("#dialog-form").dialog(grid_modal_options);
                    $("#dialog-form").parent().appendTo('form:first');
                }
</script>

显示模态框的代码:

<div id="dialog-form" title="Modal-box" style="display: none;">
    <asp:TextBox ID="Textbox1" runat="server" Text="" Enabled="false">
    <asp:CheckBox ID="Checkbox1" runat="server"/>
</div>

上面的代码不会选中复选框,而是选中成功分配的文本框值。我需要复选框一个也由javascript分配。我怎样才能做到这一点?非常感谢你。

3 个答案:

答案 0 :(得分:0)

很确定它应该是这样的:

$('#dialog-form #Checkbox1').attr('checked', true);

答案 1 :(得分:0)

使用.prop()命令:

$("#dialog-form #Checkbox1").prop("checked", CheckField1);

http://api.jquery.com/prop/

答案 2 :(得分:0)

您可以使用.val(),将复选框的值作为单项数组来检查复选框:

$('#dialog-form #Checkbox1').val([ "Checkbox1" ]);

确保复选框指定“Checkbox1”为其value