我正在爲我的餐廳開發庫存檢查表單。我的想法是,我可以舉例說一部分裝滿伏特加酒的瓶子(例如!),並根據該重量以毫升爲單位的體積將根據產品的重量(調節器)和密度自動計算。在JQuery/Javascript中使用動態變量名稱進行加減
該代碼是使用PHP自動生成的。這裏是一個例子,我選擇哪一瓶伏特加酒,並根據該選擇,我想在量程'1_liveWeight'中顯示數量。我由於我有限的經驗時遇到的問題是這行代碼:
var qty = (weight - adjuster) * density;
我想它像這樣的功能:
var qty = (weight - adjuster_!value selected from item_1!) * density!value selected from item_1!
之間的位!是我想插入價值的地方。
下面是在php中生成的代碼的摘錄。
HTML
<select id='item_1'>
<option value='3'>Smirnoff Vodka 1000ml</option>
<option value='4'>Absolute Vodka 750ml</option>
</select>
<input type='hidden' id='adjuster_3' value='140'>
<input type='hidden' id='density_3' value='0.96'>
<input type='hidden' id='adjuster_4' value='100'>
<input type='hidden' id='density_4' value='0.96'>
<input type='text' id ='weight_1' name ='weight'>
<span id='1_liveWeight'>0</span>
JQuery的
$(document).ready(function(){
$("#item_1").change(function(){
var item = $('#item_1').val();
var adjuster3 = $('#adjuster_3').val();
var density3 = $('#density_3').val();
var adjuster4 = $('#adjuster_4').val();
var density4 = $('#density_4').val();
var weight = $('#weight_1').val();
var qty = (weight - adjuster)*density+item;
$("#1_liveWeight").html("<b>"+ qty +"</b>");
});
});
我希望我已經解釋了我的問題不夠好!感謝您的幫助,
DB
它可能工作,但它是可怕的做法,不這樣做。建議你看看其他發佈的答案。 –
出於好奇,爲什麼是可怕的做法?發佈的其他選項並沒有真正考慮到腳本是由php生成的,可能有一些產品有1或2個選項,但其他可能有更多。如上所示,讓PHP來生成代碼將是一個痛苦,相比這個小的2班輪。 –
在評論的第二部分...如果添加更多選項,則不需要更改JavaScript中的任何內容。只需回調另一個「選項」,另一個匹配的「輸入」調整器和另一個「輸入」密度在HTML中,就像你正在爲你做的解決方案 –