我的测试网站中有我的产品名为缩写,如下所示
http://dev.mommyjewelry.com/initials/sideways-initial-necklace.html
现在,如果您进入该页面并选择多少金色首字母,您将根据选择在下方显示更多选择框。所以如果我选择2个首字母,我会在下面的2个选择框下面显示我们必须选择首字母的字母
现在我正在寻找这两个选择框,例如在这个例子中是必需的。所以,如果我们点击添加到购物车按钮,则显示一个弹出窗口,说明需要这两个选择框。并阻止前往购物车。
因此,如果我选择多少金首字母为3,那么显示的3个选择框就是我想要制作的那些。
我知道当我有一个文本框而不是选择框时,我可以使用下面的代码
$("#product_form").submit(function(evt) {
var target = $("#yellow-gold").val(); var target1 = $("#white-gold").val();
if(target == "initial-0" && target1=="initial-0"){
alert("You must select either White Gold or Yellow Gold Necklace.");
evt.preventDefault();
}else{
var number_of_charms = $("#yellow-gold").attr("selectedIndex") + 0;
var number_of_gold = $("#white-gold").attr("selectedIndex") + 0;
var fields_not_empty = $(":text[name^=Product_Attribute]:visible[value]").length;
if(number_of_charms > fields_not_empty) {
$(".error").show();
alert("You left one or more required fields empty. Please check your selection above and adjust as needed.");
evt.preventDefault();
}else if(number_of_gold > fields_not_empty) {
$(".error").show();
alert("You left one or more required fields empty. Please check your selection above and adjust as needed.");
evt.preventDefault();
}
}
});
从上面的代码中我可以看到,我可以使用此行在文本框中显示消息
var fields_not_empty = $(":text[name^=Product_Attribute]:visible[value]").length;
但是如果在选择框的情况下如何使用它?
答案 0 :(得分:0)
试试这个:
$("div[id^='sideways-yellow']:visible select[name^=Product_Attribute] option:selected[value='select-letter']").length
这可以为您提供黄金首字母未选择选项的数量(选项值为select-letter
时)
如果您需要获得白色,可以将sideways-yellow
更改为sideways-white
对于之前的回答感到抱歉,我没有意识到我没有得到可见的答案。