我有以下jquery代码,我遍历div并找到2个下拉列表和1个文本框。
所以基本上div中的每一行都有2个HTML SELECT和1个输入类型的文本框
我想根据这两个HTML选择的选定值对文本框进行验证。
所以对于ex:如果我从第一个下拉列表中选择option1并从第二个下拉列表中选择option3,那么我的文本框只能包含20个字符。
请告知我该怎么做。
var searchString = '';
$("#btnSearch").click(function () {
searchString = "";
$("div.cloneRow").each(function () {
if ($(this).find("input[type=text]").val() != '') {
$(this).find("select").each(function () {
if ($.trim($(this).val()) != '') {
searchString += $.trim($(this).val()) + " ";
}
});
$(this).find("input[type=text]").each(function () {
searchString += $.trim($(this).val());
});
}
});
alert(searchString);
});
});
由于
答案 0 :(得分:1)
每次按下按钮,您都会遍历包含2个选择框和文本框的div,并为每个文本框检查选择框的值并做出决定。我给出了一个案例,但可以进一步改进。希望它有所帮助
$("#yourbuttonid").click(function(){
$("div.cloneRow").each(function () {
var $select1 = $($(this).find("select.first"));
var $select2 = $($(this).find("select.second"));
var $text = $("input[type='text']");
if($select2.val() != ""){
//Your cases go in here
if($select1.val() == "1" && $select2.val() == "4"){
//check if the allowed length is exceeded for this case
if($text.val().length > 20){
//if it is empty the textbox and give a red border
$text.val("");
$text.css("border", "1px solid red");
}
}
//other cases go here
}
});
});