javascript - 使用表单将变量从 JavaScript 发布到 PHP

标签 javascript php html forms

我对脚本和编程还很陌生,此时我需要一些帮助。

我有一个带有一些下拉框的表单,用于选择多个选项。我写了一个 javascript,它根据从下拉框中选择的选项计算总价。总值已正确返回,但我很难将此值与表单一起发布。我试过隐藏的输入类型,但这也不起作用。该帖子转到一个 php 文件,该文件最后必须在 de 数据库中插入该值。

HTML

<form id="vmPrice" class="form-horizontal" method="post" 
action="create_xml.php">
<div class="control-group">
<label class="control-label" for="formattedTotalPrice">Costs:</label>
<div class="controls">
<input type="hidden" name="postPrice" id="postPrice" value="">
&euro; <span id="formattedTotalPrice" name="formattedTotalPrice" >...</span> 
/month <br/>
<span style="font-size: 10px;"> By clicking on Create VM a subscription with 
the above costs will be automaticly added to your account </span>
</form>

JavaScript

function calculateTotal()
{
    var unformattedTotalPrice = getVcpuPrice() + getOsPrice() + getHddPrice() + 
    getMemoryPrice() + getHAPrice();
    var formattedTotalPrice = unformattedTotalPrice;

    document.getElementById('formattedTotalPrice').innerHTML = 
    formattedTotalPrice;

    document.getElementById('postPrice').innerHTML = formattedTotalPrice;
}

formattedTotalPrice 使用 span id 在屏幕上正确显示。现在我想用表单发布它,但是不起作用。

PHP 代码 (create_xml.php)

$price = (int)$_POST['formattedTotalPrice'];
// or
$price = (int)$_POST['postPrice'];
print $price;

此时打印值为0。

最佳答案

您正在设置 innerHTML 属性。请改用 value 来更改输入元素的值。

document.getElementById('postPrice').value = formattedTotalPrice;

虽然 innerHTML 可用于更改页面的 HTML 内容,但从形式。

关于javascript - 使用表单将变量从 JavaScript 发布到 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47969763/

相关文章:

javascript - jquery根据查询字符串删除标签

javascript - 使用 JavaScript 的 reduce 时,如何跳过迭代?

javascript - .map 数据库查询中的多个条目

javascript - 向动态加载内容的图像添加类

javascript - 从列表中移除一个 li 的内容并删除该 li

javascript - 将 Bootstrap 与 Webpack 结合使用

php - 从同一个表中获取多个值(乱序的)

php - html5获取文件路径

iis 7 上的 php 内存缓存无法正常工作

html - 如何在 bootstrap (4.1) 中将所有行对齐到容器的底部?