Javascript / JQuery多输入,获取输入位置

时间:2015-11-23 09:29:51

标签: javascript jquery html

我有一个具有相同名称的多个输入的表单。用户将能够动态添加/删除输入行。例如

<div><select name="Car[]"></select> <input name="Qty[]"></div>
<button> Add another line</button>

通过用户互动,它有可能成为:

<div><select name="Car[]"></select> <input name="Qty[]"></div>
<div><select name="Car[]"></select> <input name="Qty[]"></div>
<div><select name="Car[]"></select> <input name="Qty[]"></div>
.......
<button> Add another line</button>

添加按钮只是复制父()并将其附加到下面。

我想执行例如Honda Civic,唯一允许的数量小于9.丰田普锐斯数量不到17 ...

强制执行将在jquery.change()函数上使用。的 $(输入[名称=&#34;数量&#34;])。改变)

$( input[name="Qty"] ).change(function() {
   if(***value car*** == "Honda Civic" && $(this).val() > 9) $(this).val(0);
   else if(***value car*** == "Toyota Prius" && $(this).val() > 17) $(this).val(0);
   else if(***value car*** == "Maserati Ghibli" && $(this).val() > 3) $(this).val(0); 
});

如何获取输入数量位置,并获得输入车的值?

2 个答案:

答案 0 :(得分:0)

您是否无法创建将车名存储到限制的对象?例如:

var carLimits = {
    'Honda Civic': '8',
    'Toyota Prius': '16'
};

然后你可以算出有多少东西&#39;用户已添加。

hondaCivicCount++

然后创建一个if语句,以检查hondaCivicCount是否小于或等于carLimit,然后再添加&#39;。

如果您正在做的事情需要保密,那么您最好做某种服务器端验证。

答案 1 :(得分:-1)

尝试使用Jquery .size(),它会告诉您有多少选择或输入https://api.jquery.com/size/

并使用.each()https://api.jquery.com/each/

获取价值