foreach (GridViewRow gvr in thisgvMemberRows){if (((CheckBox)gvrFindControl("CheckBox1"))Checked) shopperIDListAdd(ConvertToInt64(thisgvMemberDataKeys[gvrRowIndex]Value));}// 请注意这个属性 gvMemberDataKeys 你可以在工具的属性栏目中找到它,代表着自定义主键集合,可以多个,用英文输入法状态时的逗号隔开,只有一个字段时,直接用thisgvMemberDataKeys[gvrRowIndex]Value就可以取得了,如果有多个字段,则使用thisgvMemberDataKeys[gvrRowIndex]Values[index]来获取
(1)input的checked是一个html属性,checked的值没有意义,只不过各个版本对HTML的属性值写法规定不同才有了checked="value"这种写法,只要有checked就表示页面在加载的时候checkbox被选中,没有写就页面加载的时候checkbox就不被选中。
(2)同一个页面中用js获取checkbox是否选中:documentgetElementById("checkboxId")checked
(3)jsp中在提交时,浏览器会把选中的CheckBox的Value值,添加到一个String数组当中。在Servlet(jsp)中用
String[]
chk
=
requestgetParameterValues("CheckBox的名字");就能可到所有被选择的CheckBox值,如果没有选择则数组:chk
为null。
自己测试下就知道了
这是我之前解决这个问题写的东西,直接贴上来,你看下吧。
private List<Boolean> originalFoundedDevicesState; //有一个保存状态的list
给listview绑定adapter:
private CheckAdapter foundedDevices;
private ListView foundedList;
foundedDevices=new CheckAdapter(AddingDevicesActthis,originalFoundedDevices,originalFoundedDevicesState);
foundedListsetAdapter(foundedDevices);
foundedListsetItemsCanFocus(false);foundedListsetChoiceMode(ListViewCHOICE_MODE_MULTIPLE);foundedListsetOnItemClickListener(new OnItemClickListener(){
public void onItemClick(AdapterView<> parent, View view, int position,
long id) {
// TODO Auto-generated method stub
} });
2自己为checkbox复写个adapter:
class CheckAdapter extends BaseAdapter{
Context mContext;
List<Device> mData;
List<Boolean>status;
LayoutInflater mInflater;
CheckBox checkBox;
HashMap<Integer,View> lmap=new HashMap<Integer,View>();
public CheckAdapter(Context context,List<Device> data,List<Boolean> DeviceStatus)
{
mInflater=LayoutInflaterfrom(context);
mData=data;
status=DeviceStatus;
}
public int getCount() {
// TODO Auto-generated method stub
return mDatasize();
}
public Object getItem(int position) {
// TODO Auto-generated method stub
return mDataget(position);
}
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
if(lmapget(position)==null)
{
convertView=mInflaterinflate(Rlayoutchild,parent, false);
checkBox=(CheckBox)convertViewfindViewById(Riddevices);
convertViewsetTag(checkBox);
}
else
{
checkBox=(CheckBox)convertViewgetTag();
}
checkBoxsetId(position);
checkBoxsetChecked(statusget(position));
checkBoxsetText(mDataget(position)toString());
checkBoxsetOnCheckedChangeListener(new OnCheckedChangeListener(){
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
statusset(buttonViewgetId(), isChecked);
notifyDataSetChanged();
}
});
return convertView;
}
3最后可以根据其是否被选中状态判断某项是否被选中,并提取id:
for(num1=0;num1<originalFoundedDevicesStatesize();num1++)
{
if(originalFoundedDevicesStateget(num1))
finalPairedDevicesadd(new Device(originalFoundedDevicesget(num1)getName(), originalFoundedDevicesget(num1)getAddress()));
}
建议使用 linq 查询,例如:
var queryRows = from DataGridViewRow row in dataGridViewRows
where (bool)rowCell["CheckBoxColumnName"]Value
select row;
1
设置一个隐藏的input
当鼠标点这行 或者这个checkbox时 将该checkbox的ID放进input
2 利用jquery获取该行checkbox的第一个元素 并取得其值
前台:<input id="cbx" type="checkbox" class="radio" name="cbx" value='<%#Eval("Id")%>' />
后台: protected string GetCheckedBoxValue()
{
return stringIsNullOrEmpty(RequestForm["cbx"]) null : RequestForm["cbx"];
}
这样就能取到前面的VALUE值了,如果有多个的话,值是用','分开的
$(function () {
$("#Button1")click(function () {
var inputs = documentgetElementsByTagName("input");
var strs = "";
for (var i = 0; i < inputslength; i++) {
var obj = inputs[i];
if (objtype == "checkbox") {
if (objchecked == true) {
strs += objid + ",";
}
}
} alert(strs);
});
<div>
<input type="checkbox" id="c1" />
<input type="checkbox" id="c2" />
<input type="checkbox" id="c3" />
<input type="checkbox" id="c4" />
</div>
常用的就两种:
$("input")attr("checked") == "checked" or "undefined"
$("input")prop("checked") == true or false
可以参考网页链接
以上就是关于怎么遍历并获取GridView中checkBox是否选中以及该项的id求解全部的内容,包括:怎么遍历并获取GridView中checkBox是否选中以及该项的id求解、JSP中如何获取checkbox的状态(选中或非选中)、如何遍历并获取listview中checkbox是否选中以及该项的id等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)