我有 2 个组合框。
<select name="ticketType">
<option selected>Ticket type</option>
<option value="55">Promo pass</option>
<option value="65">Regular pass</option>
</select>
<select name="campingNumber">
<option selected>Camping spots</option>
<option value="0">0</option>
<option value="30">1</option>
<option value="50">2</option>
<option value="70">3</option>
<option value="90">4</option>
<option value="110">5</option>
<option value="130">6</option>
</select>
<p>Price: € <span id="price"></span></p>
我想做的是从两者中获取值并将它们加在一起,一切正常,但如果我从组合框中选择另一个值,它会继续加在一起到总数中。 这是我的 jquery:
var price=0;
$(document).ready(
function() {
$('select[name=ticketType]').change(
function(){
price =price + parseInt($(this).val());
$('#price').text(price);
}
);
}
);
$(document).ready(
function() {
$('select[name=campingNumber]').change(
function(){
price =price + parseInt($(this).val());
$('#price').text(price);
}
);
}
);
这个值我想更新到数据库,对于门票一切正常,但是对于露营号,该值是露营地的价格,0-6 的数字表示您购买露营的人数spot,如何将其添加到数据库中的表中? 对于数据库,我有下表:
person_nb (int 10)
price (int 10)
因此,我想将来自露营号码的值(value)添加到价格中,而在 person_nb 中,我想要介于 for campingNumber 组合框之间的值(value)。
$query2 = $conn-> prepare("INSERT INTO user_acc (email, ticket_price) VALUES (:email2, :ticket);");
$query2->bindParam(':email2', $email);' '$query2->bindParam(':ticket', $ticketType);
$query3 = $conn->prepare("INSERT INTO reservation (price, person_nb) VALUES (:price, :personNumber);");
$query3-> bindParam(':price', $campingPrice);
$query3-> bindParam(':personNumber', $totalNumberOfPersons);
这是查询,但对于 totalNumberOfPersons,我不知道如何获取值。例如'1'价格是30,人数应该是1。
最佳答案
你继续添加到总数而不重置任何值,所以试试这个:
var price=0;
var pricex = 0;
var pricey = 0;
$(document).ready(
function() {
$('select[name=ticketType]').change(
function(){
pricex = parseInt($(this).val());
price = pricex + pricey;
$('#price').text(price);
}
);
}
);
$(document).ready(
function() {
$('select[name=campingNumber]').change(
function(){
pricey = parseInt($(this).val());
price = pricex + pricey;
$('#price').text(price);
}
);
}
);
关于php - 从组合框中选择值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30594659/