转:只能选择GridView中的一个CheckBox(单选CheckBox)
方法1:
protected void GridView2_RowDataBound(object sender, GridViewRowEventArgs e)
{
CheckBox cbx = e.Row.FindControl("cbID") as CheckBox;
try
{
//綁定選中CheckBox 客戶端ID
cbx.Attributes.Add("onclick", "Change(" + cbx.ClientID + ")");
}
catch
{
}
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("onmouseover", "currentcolor=this.style.backgroundColor;this.style.backgroundColor ='#6699ff'");
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor =currentcolor");
}
}
后臺源中
<script type="text/javascript">
function Change(SCheckBox) {
//找到頁面所有 input
var objs = document.getElementsByTagName("input");
for (var i = 0; i < objs.length; i++) {
//找到input中的checkbox
if (objs[i].type.toLowerCase() == "checkbox")
//所有checkbox為false
objs[i].checked = false;
}
//找到選中checkbox
var SelectCheckBoxID = SCheckBox.id;
//選中checkbox為true
document.getElementById(SelectCheckBoxID).checked = true;
}
</script>
?
?
方法2:
//識別不同的瀏覽器?
function getTargetElement(evt) {
var elem
if (evt.target) {
elem = (evt.target.nodeType == 3) ? evt.target.parentNode : evt.target
}
else {
elem = evt.srcElement
}
return elem
}
var lastD = null;
function Change(evt) {
evt = (evt) ? evt : ((window.event) ? window.event : " ");
if (evt == " ") {
return;
}
var obj = getTargetElement(evt);
var hasTreeNode = false;
if (obj.tagName) {
if (obj.tagName == "INPUT" && obj.type == "checkbox") {
if (lastD) lastD.checked = false
lastD = obj;
obj.checked = true;
}
}
}
?
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
try
{
GridView1.Attributes.Add("onclick", "Change(event)");
}
catch
{
}
?
轉載于:https://www.cnblogs.com/jearay/p/3382331.html
總結
以上是生活随笔為你收集整理的转:只能选择GridView中的一个CheckBox(单选CheckBox)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鬼泣5第20关怎么过 他老是有替身 打不
- 下一篇: nf狂战能用副武器吗?