读书人

gridview跟checkbox 高分进就给

发布时间: 2012-09-13 09:51:53 作者: rapoo

gridview和checkbox 高分进就给


如上图所示。
1.点选一条数据的checkbox,将这条数据填入上面对应的textbox中去.
2.怎样将checkbox设置为只能单选

[解决办法]
没看到checkbox啊
可以在ItemCommand事件中 获取ID,对应查出值 在复制就好了

checkbox设置单选

C# code
方法一<BODY>    <input type="checkbox" name="cbox" value="cbox1" onClick="chooseOne(this);">checkBox1    <input type="checkbox" name="cbox" value="cbox2" onClick="chooseOne(this);">checkBox2    <input type="checkbox" name="cbox" value="cbox3" onClick="chooseOne(this);">checkBox3    <input type="checkbox" name="cbox" value="cbox4" onClick="chooseOne(this);">checkBox4    </BODY>   <script>        //chooseOne()函式,函式的元素本身        function chooseOne(cb){            //先取得同name的chekcBox的集合物件            var obj = document.getElementsByName("cbox");            for (i=0; i<obj.length; i++){                //判obj集合中的i元素是否cb,若否表示未被                if (obj[i]!=cb) obj[i].checked = false;                //若是 但原先未被勾 成勾;反之 未勾                //else  obj[i].checked = cb.checked;                //若要至少勾一的,把上面那行else拿掉,用下面那行                else obj[i].checked = true;            }        }    </script>  方法二<BODY>    <div id="mydiv">    <input type="checkbox" name="cbox1" value="cbox1" onClick="chooseOne(this);">checkBox1   <input type="checkbox" name="cbox2" value="cbox2" onClick="chooseOne(this);">checkBox2   <input type="checkbox" name="cbox3" value="cbox3" onClick="chooseOne(this);">checkBox3   <input type="checkbox" name="cbox4" value="cbox4" onClick="chooseOne(this);">checkBox4   </div>   </BODY>   <script>        //chooseOne()函式,函式的元素本身        function chooseOne(cb) {            //先取得Div元素            var obj = document.getElementById("mydiv");            ///判obj中的子元素i是否cb,若否表示未被            for (i=0; i<obj.children.length; i++){                if (obj.children[i]!=cb)    obj.children[i].checked = false;                //若是 但原先未被勾 成勾;反之 未勾                else    obj.children[i].checked = cb.checked;                //若要至少勾一的,把上面那行else拿掉,用下面那行                //else obj.children[i].checked = true;            }        }    </script>
[解决办法]
这个建议放到后台来实现
checkbox的事件结合GridView.Row.FindControl("checkbox")来实现
方便以后维护
如果你不想页面频繁刷新 可以在页面上包个updatePanel
[解决办法]
给checkbox加个后台事件 OnCheckedChanged="ChkValue_CheckedChanged"

后台中在事件中找到你点击的checkbox所在的当前行
protected void ChkValue_CheckedChanged(object sender, EventArgs e)
{
CheckBox ChkValue = sender as CheckBox;
int i = (ChkValue.NamingContainer as GridViewRow).RowIndex;
GridViewRow gvr = grv.Rows[i] as GridViewRow;
}
都取到这一行的GridViewRow了,剩下的就不用多说了吧

[解决办法]
.怎样将checkbox设置为只能单选

-------------------------------

晕,那你怎么不用 单选按钮??? 复选按钮做成单选。

我晕。
[解决办法]

读书人网 >asp.net

热点推荐