如何使用jquery进行表单价格计算?
我有以下表格:如何使用jquery进行表单价格计算?,jquery,forms,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="3
<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.
我真的不知道是否可以将值直接设置为HTML,因为如果用户更改如下:
<input type="checkbox" name="item[1][]" value="1"> Buy for 10 dollars.
花10美元购买。
它会将错误的值发送到my data.php
$price_one = $POST['item[1][]']; //Here get the price
$price_two = $POST['item[3][]']; //Here get the price
使用jquery和ajax执行此操作的最佳安全方法是什么?您可以为每个复选框分配一个id。id允许您单独访问它们: 花10美元买 document.getElementById(“cb10”) 目前尚不清楚您到底想做什么,但由于“x美元购买”元素没有id,您可以使用nextSibling: var x=document.getElementById(“cb10”).nextSibling.innerHTML 在那句话之后,x的价值是“10美元买” 要确定用户是否选中该框,请使用:
document.getElementById(“cb10”)。选中了我在这里做一个古怪的猜测,在黑暗中拍摄。我猜您不希望通过HTML表单篡改价格。根据一些建议,您可以执行以下操作:
//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.
花10美元购买。
花20美元买。
花30美元买。
尽管基于你需要的,单选按钮可能比复选框效果更好
更新:根据问题更新,我更清楚地看到了问题,但是即使价格被篡改,您也可以始终将项目映射到可能的价格,以便能够检测到任何篡改。使用Javascript和JQuery只能提供某种形式的安全性,但在我看来不是这样。服务器端验证更适合于此。不清楚……….请提供具体说明最好的方法是服务器端验证。DOM只包含对实际项目的ID引用,因此即使他们编辑了价格,您也会从服务器获得价格。哦,我怎么知道所选框及其相应的价格?哦,谢谢。在这种情况下,我如何进行服务器端验证?这是一个单独的问题,但基本上在存储数据或处理付款之前收到数据时,只需进行一些查找以确保数据是可接受的、准确的等。您仍然应该为复选框分配一个id。这样,您可以访问每一个,并告诉它是否已检查。