获取checkbox的选中状态,js获取checkbox的选中状态
怎么获取listview 中checkbox的选中状态
这是我之前解决这个问题写的东西,直接贴上来,你看下吧。
private
ListBoolean
originalFoundedDevicesState;
//有一个保存状态的list
给listview绑定adapter:
private
CheckAdapter
foundedDevices;
private
ListView
foundedList;
foundedDevices=new
CheckAdapter(AddingDevicesAct.this,originalFoundedDevices,originalFoundedDevicesState);
foundedList.setAdapter(foundedDevices);
foundedList.setItemsCanFocus(false);foundedList.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
foundedList.setOnItemClickListener(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;
ListDevice
mData;
ListBooleanstatus;
LayoutInflater
mInflater;
CheckBox
checkBox;
HashMapInteger,View
lmap=new
HashMapInteger,View();
public
CheckAdapter(Context
context,ListDevice
data,ListBoolean
DeviceStatus)
{
mInflater=LayoutInflater.from(context);
mData=data;
status=DeviceStatus;
}
public
int
getCount()
{
//
TODO
Auto-generated
method
stub
return
mData.size();
}
public
Object
getItem(int
position)
{
//
TODO
Auto-generated
method
stub
return
mData.get(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(lmap.get(position)==null)
{
convertView=mInflater.inflate(R.layout.child,parent,
false);
checkBox=(CheckBox)convertView.findViewById(R.id.devices);
convertView.setTag(checkBox);
}
else
{
checkBox=(CheckBox)convertView.getTag();
}
checkBox.setId(position);
checkBox.setChecked(status.get(position));
checkBox.setText(mData.get(position).toString());
checkBox.setOnCheckedChangeListener(new
OnCheckedChangeListener(){
public
void
onCheckedChanged(CompoundButton
buttonView,
boolean
isChecked)
{
//
TODO
Auto-generated
method
stub
status.set(buttonView.getId(),
isChecked);
notifyDataSetChanged();
}
});
return
convertView;
}
3.最后可以根据其是否被选中状态判断某项是否被选中,并提取id:
for(num1=0;num1originalFoundedDevicesState.size();num1++)
{
if(originalFoundedDevicesState.get(num1))
finalPairedDevices.add(new
Device(originalFoundedDevices.get(num1).getName(),
originalFoundedDevices.get(num1).getAddress()));
}
JSP中如何获取checkbox的状态(选中或非选中)?
(1)input的checked是一个html属性,checked的值没有意义,只不过各个版本对HTML的属性值写法规定不同才有了checked="value"这种写法,只要有checked就表示页面在加载的时候checkbox被选中,没有写就页面加载的时候checkbox就不被选中。
(2)同一个页面中用js获取checkbox是否选中:document.getElementById("checkboxId").checked
(3)jsp中在提交时,浏览器会把选中的CheckBox的Value值,添加到一个String数组当中。在Servlet(jsp)中用
String[]
chk
=
request.getParameterValues("CheckBox的名字");就能可到所有被选择的CheckBox值,如果没有选择则数组:chk
为null。
自己测试下就知道了
如何获取checkbox 选中的状态
(1)input的checked是一个html属性,checked的值没有意义,只不过各个版本对HTML的属性值写法规定不同才有了
checked="value"这种写法,只要有checked就表示页面在加载的时候checkbox被选中,没有写就页面加载的时候checkbox
就不被选中。
(2)同一个页面中用js获取checkbox是否选中:document.getElementById("checkboxId").checked
(3)jsp
中在提交时,浏览器会把选中的CheckBox的Value值,添加到一个String数组当中。在Servlet(jsp)中用 String[]
chk =
request.getParameterValues("CheckBox的名字");就能可到所有被选择的CheckBox值,如果没有选择则数
组:chk 为null。
自己测试下就知道了
怎么获取checkbox选中状态方法
1、定义一个checkbox节点
2、根据id获取checkbox节点
var chk = document.getelementbyid('iptchk');//通过getelementbyid获取节点
3、通过checked设置为true,变checkbox为选中状态
chk.checked = true;//设置checked为选中状态