如何使用jquery进行表单价格?

时间:2015-11-14 03:25:07

标签: jquery forms

我有这样的表格:

 <2>First Item</h2>
 <input type="checkbox" name="item[1][]" value="10"> Buy for 10 dollars.
 <input type="checkbox" name="item[1][]" value="20"> Buy for 20 dollars.
 <input type="checkbox" name="item[1][]" value="30"> Buy for 30 dollars.  
 <h2>Secound Item</h2>
 <input type="checkbox" name="item[2][]" value="10"> Buy for 10 dollars.
 <input type="checkbox" name="item[2][]" value="20"> Buy for 20 dollars.
 <input type="checkbox" name="item[2][]" value="30"> Buy for 30 dollars.

我想发送到我的data.php。

 $price_one = $POST['item[1][]']; //Here get the price 
 $price_two = $POST['item[3][]']; //Here get the price

我真的不知道我是否可以将值直接设置为HTML,因为如果用户改变如:

  <input type="checkbox" name="item[1][]" value="1"> Buy for 10 dollars.

它将向我的data.php发送错误的值。

使用jquery和ajax执行此操作的最佳和最安全的方法是什么?

2 个答案:

答案 0 :(得分:0)

您可以为每个复选框分配一个ID。 id允许您单独访问它们:

买10美元。

的document.getElementById( “CB10”)...

目前尚不清楚你想要做什么,但由于'买换x美元'元素没有id,你可以使用nextSibling:

var x = document.getElementById(“cb10”)。nextSibling.innerHTML;

在该声明之后,x的值是“买10美元”。

要确定用户是否选中了该框,请使用:

的document.getElementById( “CB10”)。检查

答案 1 :(得分:0)

我在这里采取一种愚蠢的猜测并在黑暗中拍摄。我猜你不希望价格篡改你的HTML表格。从一些建议中你可以做到这样的事情:

  1. 创建一个可接受的价格集合列表,并为每个价格提供一个ID(如果他们篡改和更改,他们仍然会从您设置的列表中支付可接受的价格。所以您可以在其他地方处理该论点)
  2. 将价格ID设置为复选框值,一旦id匹配处理它,如果没有返回错误
  3. 以下是一些视觉效果:

    //storage structure
    id | price
    ------------
    1  | 10
    2  | 20
    3  | 30
    

    HTML表单:

    <input type="checkbox" value="1"> Buy for 10 dollars.
    <input type="checkbox" value="2"> Buy for 20 dollars.
    <input type="checkbox" value="3"> Buy for 30 dollars.
    

    虽然基于你需要的东西,单选按钮可能会更好而不是复选框

    更新:基于问题更新,我更清楚地看到问题,但即使价格被篡改,您也可以始终将项目映射到可能的价格,以便可以检测到任何篡改。使用Javascript和JQuery只能为您提供某种形式的安全性,但在我看来并不是这样。服务器端验证对此更好。