使用 jQuery 根据另一个选择框制作所需的选择框
Make a selecbox(es) required based on another selectbox using jQuery
我的测试站点中有一个名为缩写的产品,如下所示
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;
但是在选择框的情况下如何使用它呢?
试试这个:
$("div[id^='sideways-yellow']:visible select[name^=Product_Attribute] option:selected[value='select-letter']").length
这应该会得到黄金首字母未选择的选项的数量(其中选项值为 select-letter
(
如果您需要获得白色的,您可以将sideways-yellow
更改为sideways-white
对不起之前的答案,我没有意识到我没有得到的不仅仅是可见的。
相关文章:
- 从动态创建的html选择中选择所选选项
- 如何选择多个输入字段并删除所需的属性
- 如何取消选择所选选项并将JqueryMobile中选择的值刷新为1st
- 更新:仅根据单选按钮和所选选项选择特定项目
- 选择所有td's基于所选内容覆盖多行
- 禁用/启用基于单选/选择选项所选Javascript的文本框
- 隐藏选择's optgroups及其内容(所选内容除外)
- gulpuncss正在过滤我的javascript所需的选择器
- 指定jQuery选择器所引用的HTML页面
- 选择“;所选元素“;再次从选择框角度
- 如何在画布中制作选择框以选择它接触的任何对象,而不仅仅是它所包含的对象
- 使用 jQuery 根据另一个选择框制作所需的选择框
- 选择元素 所选项在绑定后将重置
- 制作所见即所得的文本编辑器
- 如何根据Ajax请求更改选择框所选选项
- mpld3中自定义插件中的选择--制作滑块
- 虽然我使用# idname选择了所有的id,但为什么没有更改所有的id ?
- 根据另一个选择标记所选值选择标记选项
- 如何为具有相同名称的选择设置所选选项
- 根据选择更改所选值