如何使用ajax将数组值发送到php页面
我正在尝试使用ajax将一些数组值传递到php页面。这是我尝试过的。但它只传递第一个值,而不是所有数组值如何使用ajax将数组值发送到php页面,php,ajax,Php,Ajax,我正在尝试使用ajax将一些数组值传递到php页面。这是我尝试过的。但它只传递第一个值,而不是所有数组值 <script> function priceSub() { var price = $("input[name='price[]']").val(); $.post('db_price.php', {prce:price}); return true; } </script> <?php //this
<script>
function priceSub() {
var price = $("input[name='price[]']").val();
$.post('db_price.php', {prce:price});
return true;
}
</script>
<?php //this is come from another page
$itemCount = count($_POST["price"]);
for($i=0;$i<$itemCount;$i++) {
$op_name=$_POST['price'][$i];
?>
<input type="hidden" value="<?php echo $price;?>" name="price[]" id="price"/>
<?php
}
?>
<input type="submit" value="Submit" class="suboderbtn" onclick="return priceSub();"/>
函数priceSub(){
var price=$(“输入[name='price[]”)val();
$.post('db_price.php',{prce:price});
返回true;
}
您需要知道的第一件事是您有{prce:price}
,并且使用$\u POST['price']
,因此您需要使用{price:price}
。
但是,您可以通过ajax发送任意数量的数据:
$.post('db_price.php', {price:price, data1: "value1", data2: "value2",...});
您可以使用$\u POST['price']
,$\u POST['data1']
,$\u POST['data2']
,。。。在php脚本中
编辑:
不能发送带有一个文本字段的数组。为此,可以使用,
分隔值,并在php脚本中分解该值。例如,文本字段值可能是“value1,value2”。现在,您可以使用以下代码获取数组值:
$prices = explode(",", $_POST['price']);
现在,$prices[0]
将是“value1”,而$prices[1]
将是“value2”。尝试使用json\u encode函数:
$.post('db_price.php',)代码>发布数组字段时,请执行此操作
Javascript
<script>
function priceSub() {
var price = $('input#price').serialize();
console.log(price)
$.post('db_price.php', {price:price});
return true;
}
</script>
函数priceSub(){
var price=$('input#price').serialize();
控制台日志(价格)
$.post('db_price.php',{price:price});
返回true;
}
html
使用JSON..您正在发送一个值,对吗?另外,{prce:price}
应该是{price:price}
否此文本字段在数组中显示一些价格值。您不能将数组存储在文本字段中。在这种情况下,您需要使用,
拆分文本字段值,并分别发送每个值。
<input type="hidden" value="10" name="price[]" id="price"/>
<input type="hidden" value="20" name="price[]" id="price"/>