我希望确保所有下拉字段都有一个选定的值,输入字段有一个值。我怎么能这样做呢?提前谢谢。
$(document).ready(function() {
validate();
$('input').on('keyup', validate);
});
function validate() {
var inputsWithValues = 0;
var myInputs = $("input:not([type='hidden'])");
myInputs.each(function(e) {
// if it has a value, increment the counter
if ($(this).val()) {
inputsWithValues += 1;
}
});
if (inputsWithValues == myInputs.length) {
$(“.button_link").removeClass('disabled').addAttr("href");
} else {
$(“.button_link").addClass('disabled').removeAttr("href");
}
}
我希望看到如何检测输入字段和选择?我的代码只适用于选择。
var myInputs = $("输入:not([type =' hidden'])");
(选择)???
答案 0 :(得分:0)
你可以尝试这样的事情。你可能需要稍微调整一下。
$(document).ready(function() {
//validate();
$('input').on('blur', function(){
if(validate()){
$(".button_link").prop('disabled', false);
} else {
$(".button_link").prop('disabled', true);
}
});
$('select').on('change', function(){
if(validate()){
$(".button_link").prop('disabled', false);
} else {
$(".button_link").prop('disabled', true);
}
});
});
function validate() {
$("input:not([type='hidden'],[type='button'])").each(function(){
if($(this).val() == ""){
return false;
}
});
$("select").each(function(){
if($(this).val() == ""){ // change empty string if unselected has a value (e.g. 0)
return false;
}
});
return true;
}
答案 1 :(得分:0)
好的,我终于有了这个工作,如果有人有任何调整,请告诉我。
<script>
$(document).ready(function() {
validate();
$('input').on('keyup', validate);
$('select').on('change', validate);
});
function validate() {
var inputsWithValues = 0;
// get all input fields except for type='submit'
// var myInputs = $("input:not([type='submit'])");
var myInputs = $("option:selected, input:not([type='hidden'])");
myInputs.each(function(e) {
// if it has a value, increment the counter
if ($(this).val()) {
inputsWithValues += 1;
}
});
if (inputsWithValues == myInputs.length) {
$(".button_link").removeClass('disabled').addAttr("href");
} else {
$(".button_link").addClass('disabled').removeAttr("href");
}
}
</script>