这里我试图获取已检查项目的名称。例如,我想获取名称牛奶并显示它。
这是代码:
var ckboxes=document.getElementsByClassName("ckbox");
for(i=0;i<ckboxes.length;i++){
if(ckboxes[i].checked==true){
values=ckboxes[i].value;
console.log(values);
}
}
<html>
<body>
<label><input type="checkbox" value="" class="ckbox">Milk</label>
</body>
</html>
答案 0 :(得分:4)
您可以获得next sibling node
ckboxes[i].nextSibling.nodeValue
<强>演示强>
var ckboxes = document.getElementsByClassName("ckbox");
for (i = 0; i < ckboxes.length; i++) {
values = ckboxes[i].value;
console.log(ckboxes[i].nextSibling.nodeValue);
}
&#13;
<label><input type="checkbox" value="" class="ckbox">Milk</label>
&#13;
但是,如果您的代码在label
之内和input
之后会有换行符,那么请使用@ teemu的建议
ckboxes[i].parentElement.textContent;
答案 1 :(得分:1)
public void SaveClass(View view)
{
String className = className_EditeText.getText().toString();
String uniName = uniName_EditeText.getText().toString();
String classNumber = classNumber_EditText.getText().toString();
database.OpenDatabase();
database.SaveClass(className , classNumber , uniName);//SaveClass If Find Same Data Will Not Save
database.close();
//I want to only when data is saved (intent run)
Intent intent = new Intent();
intent.setClass(this , MainActivity.class);
startActivity(intent);}
不是Milk
的一部分。它是checkbox
的一部分。另外,您不应访问label
,而应访问value
:
textContent
&#13;
var ckboxes=document.getElementsByClassName("ckbox");
for(i=0;i<ckboxes.length;i++){
if(ckboxes[i].checked==true){
var values=ckboxes[i].parentNode.textContent;
console.log(values);
}
}
&#13;