我知道这是一种喧嚣,但我非常接近我必须发布的解决方案。
我有一个带有两个复选框的表单,可以切换相关的跨度是否可见。 num_bw和num_c是包含输入框的跨度,其中用户放置用户想要的两种类型的产品中的多少种。但我担心,用户可能会将一个数字放入暂时可见的文本字段(比如第一个,在num_bw范围内),但随后会改变主意并取消选中该复选框并将一个数字放入框中而是在num_c范围内。
此代码的工作方式,num_bw字段现在将不可见 - 但它可能仍然包含一个数字!如果他点击提交,用户可能会惊讶地看到那些3黑色&他不再想要的白色产品仍然在他的购物车中! Woops!
所以我需要检查这两个文本字段中的任何一个(它们的名称是orderquantitybw和orderquantityc,我还可以在需要时添加ID)是否在一个现在不可见的范围内(#num_bw和#num_c),以及如果他们是,将他们的价值变为零,零,zilch,“”,任何不会混淆购物车软件(这不是我的部门,它的工作方式对我来说有点不透明。)
这是在头脑中,它只是让这些跨度在开始时不可见:
$(document).ready(function() {
$('#num_bw').hide();
$('#num_c').hide();
});
这是在相关表单之后,当用户点击复选框时,它会使跨度可见或不可见:
$('#show_c').click(function(){
$('#num_c').toggle();
});
$('#show_bw').click(function(){
$('#num_bw').toggle();
});
我想在最后添加一个功能。我没有写完它就停止了。有什么帮助吗?
$('#submit_btn').click(function(){
/*Insert script to turn form box's values to "0" if
they are in an invisible span*/
)};
答案 0 :(得分:0)
试试这个
$('#submit_btn').click(function(){
$("#num_bw, #num_c").each(function(){
if(!$(this).is("visible")){
$(this).find("input").val("0")
}
});
)};
答案 1 :(得分:0)
$('#submit_btn').click(function(){
$("#num_bw, #num_c").filter(':hidden').find('input').val('0');
});
答案 2 :(得分:0)
$("#num_bw:hidden").val(0)
$("#num_c:hidden").val(0)
应该这样做。或者你可以这样做:
$(".quantityTextBox:hidden").val(0)
表示“quantityTextBox”类的文本框