2011-06-24 127 views
2

我有一個GridView從我的SQL數據庫中的表中取回數據。我的數據庫中有一個複選框字段設置爲BIT數據值。我需要能夠從asp.net中的表中選擇一行(一次只能選擇一行),以便接受或拒絕採購訂單。asp.net複選框

到目前爲止,我有以下代碼

<asp:CheckBoxField DataField="CheckBox" HeaderText="Select" Visible="true" ReadOnly="false" /> 

這是剛剛拉了回來,列「複選框」都有一個複選框值的事實,而不是讓我選擇它。我所見過的所有演示都使用了datagrid視圖並在其中插入了一個複選框,但是,我似乎無法將數據庫中的字段添加到此處。

任何幫助,歡迎

回答

0

GridView控件默認爲ItemMode它不允許編輯。您必須添加編輯命令並切換到EditMode,然後您的複選框應該可編輯。

<Columns> 
     ... 
     <asp:CommandField ShowEditButton="True" /> 
     ... 
</Columns> 

或者,你可以把它TemplateField,使其即使在ItemMode編輯。

0

儘管這是一個複選框字段,但在默認情況下,GridView中的行是不可編輯的。我總是這樣處理的方法是使用TemplateField

<asp:TemplateField HeaderText="Select"> 
<ItemTemplate> 
<asp:CheckBox runat="server" ID="chkSelect" Checked='<%# Eval("Select") %>' /> 
</ItemTemplate> 
</asp:TemplateField> 

然後,如果你想一次只選擇一個排,使用這樣的事情(在jQuery 1.6):

var checkboxes = $('input[type="checkbox"][name$="chkSelect"]'); 
checkboxes.click(function() { 
    checkboxes.not(this).prop("checked", false); 
}); 

Working Demo