多选框,如果勾选前面几项,在勾选其他项时,非空校验无效
在制作问卷中,最希望得到的数据一般都是其他项,希望对与其他是极少数人的需求,如果满足这些需求,对与一些客户的竞争力会达到百分百。所以希望在使用多选框时,有其他项,希望填报者在勾选其他项时,可以保证百分百填写其他项。但是目前在使用手机端的多选框时,使用非空校验。如果在其他项被勾选的情况下,同时勾选其他项,可以避开非空校验,直接存入数据库,这样不能达到想要的结果。
有什么办法,在填报者使用多选框的时候,勾选其他项时,必须填写后面的内容,才能提交数据。
这个虽然我们并不觉得很合理,但是会研究一下怎么做哈。
为什么我会觉的不合理呢,原因:如果填写这个表单(问卷)的人想写其他的信息,他自己就会给你填写进去了;如果他乡麻烦不想填写,我们即使提示他了,他一样会给把其他反勾掉,希望您慎重考虑一下这个使用场景。 你可以使用这个代码,来找到这个时机
$('input')
.focusout(function(event) {
var target = event.target;
if (typeof (target.value) === 'undefined' || target.value === '') {
var labels = $(target).siblings('label');
var otherCheck = labels;
var isChekced = $(otherCheck).find('input').checked;
if (isChekced) {
alert('该值不能为空');
}
}
});
function checkEmptyOtherText() {
var checkboxes = $('input');
for(var i = 0; i < checkboxes.length; i++) {
var checkbox = checkboxes;
if (checkbox.checked) {
var textInput = $(checkbox).parent().siblings(':last');
if (textInput.val() == '') {
alert('有空值');
}
}
}
}
页:
[1]