0
我有一个表格,我有一个表格,每个表格有三个单选按钮,我想获得radioButton的值并将其存储在一个数组中。获取警报从此功能开关外壳内不起作用:Javascript单选按钮检查不工作使用列
var registerEventToRadio = function registerEventToRadio(formName, radioName, radio) {
//alert('aaaa'); works uncommenting this causes 9 alerts...
var mandyEvent = function mandyEvent(event) {
switch (formName) {
case 'rowform_chandelier':
mandatoryArr[0] = 1;
alert(1); //does not work
break;
case 'rowform_fireplace':
mandatoryArr[1] = 1;
alert(1); //does not work
break;
case 'rowform_rooflights':
mandatoryArr[2] = 1;
alert(1); //does not work
break;
}
};
var viEvent = function viEvent(event) {
switch (formName) {
case 'rowform_chandelier':
visibleArr[0] = 1;
alert(1); //does not work
break;
case 'rowform_fireplace':
visibleArr[1] = 1;
alert(1); //does not work
break;
case 'rowform_rooflights':
visibleArr[2] = 1;
alert(1); //does not work
break;
}
};
var renoEvent = function renEvent(event) {
switch (formName) {
case 'rowform_chandelier':
renameArr[0] = 1;
alert(1); //does not work
break;
case 'rowform_fireplace':
renameArr[1] = 1;
alert(1); //does not work
break;
case 'rowform_rooflights':
renameArr[2] = 1;
alert(1); //does not work
break;
}
};
var i = 0;
for (i = 0; i < radio.length; i++) {
if (radioName === 'mandatory') radio[i].onclick = mandyEvent;
if (radioName === 'visible') radio[i].onclick = viEvent;
if (radioName === 'rename') radio[i].onclick = renoEvent;
}
};
调用该函数以这种方式:
var reno = getRadioButtonArray(formName, 'rename');
registerEventToRadio(formName, 'mandatory', mandy);
registerEventToRadio(formName, 'visible', vi);
registerEventToRadio(formName, 'rename', reno);
This是一个的jsfiddle它由那里使用的所有代码。
我可以在表单中放置一个tr吗? – vamsiampolu
不,tr'只能放在'table','thead','tbody'或'tfoot'里面。我建议,不要依赖不做任何事情的表单,而是通过ID来识别相关项目。另一方面,即使使用无效的HTML,也可以使您的功能正常工作。 – JLRishe
在'switch-case'语句中使用'this.value'而不是1,他们会得到单选按钮的值吗? – vamsiampolu