2012-07-11 79 views
0

我正在教我的自我php和mysql.I创建一个小型商业网站来测试我的技能。 我网页上多发的形式这样jquery从相同的形式选择值

<div class="formInfo"><form name="CartForm" method="post" action="./ajax/addCart.php" class="fixed"> 
<input name="prodId" type="hidden" value="10" /> 
    <label for="qty">Quantity:</label> 

    <input name="qty" type="text" id="qty" size="4" maxlength="6" class="qtyBox"> 
    <br> 
    <input type="submit" name="addtoCart" id="addtoCart" value="Add to Cart" class="btnAdd"> 
</form> 



<div class="formInfo"><form name="CartForm" method="post" action="./ajax/addCart.php" class="fixed"> 
<input name="prodId" type="hidden" value="7" /> 
    <label for="qty">Quantity:</label> 

    <input name="qty" type="text" id="qty" size="4" maxlength="6" class="qtyBox"> 
    <br> 
    <input type="submit" name="addtoCart" id="addtoCart" value="Add to Cart" class="btnAdd"> 
</form> 


<div class="formInfo"><form name="CartForm" method="post" action="./ajax/addCart.php" class="fixed"> 
<input name="prodId" type="hidden" value="9" /> 
    <label for="qty">Quantity:</label> 

    <input name="qty" type="text" id="qty" size="4" maxlength="6" class="qtyBox"> 
    <br> 
    <input type="submit" name="addtoCart" id="addtoCart" value="Add to Cart" class="btnAdd"> 
</form> 

现在,当我点击透过按钮,我想显示隐藏域ID和可见光领域QTA的值(目前点击形式) 到目前为止我的代码是

<script type="text/javascript"> 
$(document).ready(function(e) { 
    $('.formInfo').submit(function() { 
     alert($(this).val()) 
    }); 
}); 
</script> 

我不out.How告诉jQuery的,我想“ID”和“本”参考参考自身

回答

0

正如在以前的答案表示ID应该是唯一的,你需要绑定提交的表格,一个div,你可以通过他们的名字从表单元素来访问模板件

$(document).ready(function(e) { 
    $('.formInfo form').submit(function() { 
     alert(this.prodId.value); 
     alert(this.qty.value); 
    }); 
}); 

FIDDLE

+0

正是我在寻找的感谢! – user1125033 2012-07-11 21:06:44

1

首先不是值“数量”的值,你不能在同一个HTML文档中有多个元素w ith相同的id。您必须将其更改为qty1qty2之类的内容。 您将活动绑定到<div>,而不是表单。您还需要选择输入元素。试试这个:

$(document).ready(function(e) { 
    $('.formInfo form').submit(function() { 
     $("input[type=hidden],input[name=qty]",this).each(function(){ 
      alert($(this).val()); 
     }); 
    }); 
}); 
+0

不错,但也值得注意的是表单本身没有值,所以'.val()'不会产生预期的结果。 – 2012-07-11 20:06:50

+0

不起作用。空白警报弹出窗口 – user1125033 2012-07-11 20:08:00

+0

@KevinB对不起,我修正了这个问题。 – wecsam 2012-07-11 20:10:06