我使用以下代码以表格
选择随机答案 $('table').filter(function() { return ($(this).find('input').size() > 0); }).find('tr').each(function()
{
$(this).find('input').filter(function(){ return (Math.round(Math.random()) == 1); }).each(function()
{
switch(this.type) {
case 'checkbox':
case 'radio':
this.checked = true;
this.trigger('click');
break;
case 'password':
case 'select-multiple':
case 'select-one':
case 'text':
case 'textarea':
$(this).val('12345');
break;
}
});
});
但它有时不会连续回答任何输入元素。请帮帮我。
答案 0 :(得分:0)
您的代码有问题。 “input”标签上的“type”属性不能是“select-one”,“select-multiple”或“textarea”。
对于textarea,它是一个完全不同的标签:<textarea>some text</textarea>
对于选择它也是一个不同的标记:<select>
用于单个选择,<select multiple="multiple">
用于多个选择。
您没有指定“何时”它不起作用,但我相信情况就是这样。
答案 1 :(得分:0)
我建议只删除前两行以及代码的最后一行,因为你可以简单地用$('input')更改$(this).find('input')并具有完全相同的事情,只是更简单。另外,我只是删除你的随机化,因为这可能是你的一些行没有改变的原因。 这可能会解决您的问题:
$("input").each(function() {
switch(this.type) {
case 'checkbox':
case 'radio':
this.checked = true;
this.trigger('click');
break;
case 'password':
case 'select-multiple':
case 'select-one':
case 'text':
case 'textarea':
$(this).val('12345');
break;
}
});