2012-11-05 36 views
0

我有顯示活動名稱和複選框列的datagrid。用戶選中該複選框,如果他/她想選擇該活動並按提交按鈕以成功添加它。比較datagrid中chekbox列的現有值和修改值

如果用戶想要取消選中選中的複選框,我必須進行一定的驗證,以檢查該活動是否與其他任何事物關聯。

我該怎麼做?

+0

請解釋什麼是其他的東西?在這句話中'我必須進行一定的驗證,以檢查該活動是否與其他任何事物相關聯 – Sami

回答

1

如果驗證可以在客戶端完成,模板字段添加到GridView ,在模板字段中添加一個複選框並向其添加JavaScript事件

<asp:TemplateField HeaderText="IsActive"> 
    <ItemTemplate> 
     <asp:CheckBox ID="chkActive" Checked='<%# Bind("IsActive") %>' runat="server" onClick="checkboxClicked(this)" /> 
    </ItemTemplate> 
</asp:TemplateField> 

處理JavaScript事件並執行驗證。如果用戶未選中的複選框,並驗證失敗,您可能會提示用戶,並檢查在JavaScript中的複選框,如圖所示:

function checkboxClicked(src) { 
    if (!src.checked) { 
     var valid; 
     //Perform validation and set a boolean value to the variable valid 
     if(!valid) 
      src.checked = true; 
    } 
} 

這可以幫助你實現你在找什麼。如果您需要任何其他幫助,您可以發表評論。

0

沒有看到你的HTML的標記,我可以建議你點事做這樣的... ...

$('#my_checkbox').click(function(){ 
if($(this).is(':checked'){ 
    // do something here 
} else { 
    // Perform your certain validations here.. 
} 

}