gpt4 book ai didi

javascript - 保存选项表单并传递 JS 变量

转载 作者:行者123 更新时间:2023-12-02 23:33:51 25 4
gpt4 key购买 nike

我有一个带有单选按钮和列表框的表单。我试图在按下按钮时调用 php 文件,以将所选选项保存到 MySQL 数据库中。我想传递所选选项以及total_cost,这是一个JS变量。

当按下表单提交按钮时,如何将 JS 变量传递给 php 文件?

<form action="saveConfig.php" class="hide-submit" method="post">

<div class="btn-configure step2button">
<span class="pcButtonText">
Save
</span>
</div>


<ul id="radio" class="input-list">
<li>
<input id="item-1" name="config-prod" value="1.00" type="radio" onchange="updateTotal();">
<label for="item-1">Item 1 [£1.00]</label>
</li>
<li>
<input id="item-2" name="config-prod" value="12.34" type="radio" onchange="updateTotal();">
<label for="item-2">Item 2 [£12.34]</label>
</li>
<li>
<input id="item-3" name="config-prod" value="9.99" type="radio" onchange="updateTotal();">
<label for="item-3">Item 3 [£9.99]</label>
</li>
</ul>

<select id="plist" name="partlist" onchange="updateTotal();">
<option value="99.99">CPU 1</option>
<option value="123.00">CPU 2</option>
<option value="250.54">CPU 3</option>
</select>



</form>
<br>
Total: <input id="total" type="text">

JS:

let buildcost = 25.00;

function updateTotal() {
let radios = document.getElementsByName('config-prod');
let select = document.getElementById('plist');
let partcost = 0;

for (let i = 0, j = radios.length; i < j; i++) {
if (radios[i].checked) {
partcost = parseFloat(radios[i].value);
break;
}
}

partcost += parseFloat(select.options[select.selectedIndex].value);

let total_cost = buildcost + partcost;
document.getElementById('total').value = total_cost.toFixed(2);
}

我不知道如何传递变量total_cost。任何建议将不胜感激。

最佳答案

使用它来保存您的更改,然后在 saveConfig.php 中使用 json_decode($_POST) 接收您的数据

<form action="#" class="hide-submit">
<div class="btn-configure step2button">
<span class="pcButtonText">
Save
</span>
</div>

<ul id="radio" class="input-list">
<li>
<input id="item-1" name="config-prod" value="1.00" type="radio" onchange="updateTotal();">
<label for="item-1">Item 1 [£1.00]</label>
</li>
<li>
<input id="item-2" name="config-prod" value="12.34" type="radio" onchange="updateTotal();">
<label for="item-2">Item 2 [£12.34]</label>
</li>
<li>
<input id="item-3" name="config-prod" value="9.99" type="radio" onchange="updateTotal();">
<label for="item-3">Item 3 [£9.99]</label>
</li>
</ul>

<select id="plist" name="partlist" onchange="save();">
<option value="99.99">CPU 1</option>
<option value="123.00">CPU 2</option>
<option value="250.54">CPU 3</option>
</select>
</form>
<br>
Total: <input id="total" type="text">

<script>
function save(){
$.ajax({
url : 'saveConfig.php',
type: "POST",
data: $('#form').serialize(),
dataType: "JSON",
success: function(data)
{
alert('saved');
},
error: function (jqXHR, textStatus, errorThrown){
alert(errorThrown);
}
});
}
</script>

关于javascript - 保存选项表单并传递 JS 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56373845/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com