如何使用javascript将html页面中的变量值传递给php?
我在index.php中创建了这段代码
$amount = $_GET['pricenumb'];
echo $amount;
这是我的JavaScript代码,只需单击按钮即可调用并将数据发送到PHP文件。
<script type="text/javascript">
$(".cell").on("click", "input:checkbox", function () {
var thiss = $(this);
var total = $("#price");
var target = $("label[for='" + thiss.attr("id") + "']");
var item_value = +(target.html().replace(/[^0-9\.]/g, "") || 0);
var cur_total = +(total.html().replace("$", "") || 0);
if (thiss.prop("checked") === true) {
cur_total += item_value;
} else {
cur_total -= item_value;
};
total.text("$" + cur_total);
});
</script>
<script type="text/javascript">
$("#pay_btn").on("click", function () {
var price = $("#price").text();
var pricenumb = price.replace(/[^0-9\.]/g, "");
$.ajax({
type: "POST",
url: "forumdisplay.php?fid=2",
data: "price=" + price + "pricenumb="+ pricenumb,
cache:false,
success: function(){
}
});
});
</script>
这是复选框,
<div class="cell">
<div class="form-check"><label for="check-a" class="form-check-label"><input id="check-a" class="form-check-input" type="checkbox">$166<span class="form-check-sign"></span></label>
<div class="mask visible-on-sidebar-regular">Buy Product</div>
</div>
</div>
工作代码是,当我选中复选框时,它将更新div的内容,我想当我单击“付款”按钮时,通过javascript获取div的值并将该值发送到我的index.php
答案 0 :(得分:0)
您正在ajax中使用POST
,在php中使用GET
,将ajax更改为GET
。另外,在您的ajax更改中
type: "POST",
url: "forumdisplay.php?fid=2",
data: "price=" + price + "pricenumb="+ pricenumb,
到
type: "GET",
url: "forumdisplay.php",
data: {
price: price,
pricenumb: pricenumb,
fid: 2
}
答案 1 :(得分:0)
这不是您在ajax中传递数据的方式。正确的格式是使用大括号并定义道具名称,然后定义值
data:{propName1: value1,propsName2: value2,propsName3: "Some string value"}
在POST请求的情况下,可以在这样的文件中使用哪个
。 $_POST['propName1']
将给出value1变量数据作为结果
$_POST['propName3']
,它将输出为Some string value
字符串
如果值是字符串,则该值可以用引号引起来;如果是变量,则可以不使用引号引起来。因此,您需要将ajax数据道具重新定义为
$.ajax({
type: "POST",
url: "forumdisplay.php?fid=2",
data: {price: price ,pricenumb: pricenumb},
cache:false,
success: function(response){
// Things to do on success
},
error: function(error){
// Error handling in case of error
}
});
您传递的这些值可以在文件forumdisplay.php
中与$_POST['price']
和$_POST['pricenumb']
一起使用。 $ _ POST 中的名称是Ajax函数中数据道具中的 propsName 。