我试图获取所选下拉菜单项的值,以动态添加到文本输入字段中的总数,其中id ="结果"当/选择一个项目时。
我正在使用ddSlick库。
来自id =" basic"的值(下面)是选择任何选项之前总数的基础值(下拉菜单中的所选项目x 5菜单)。
<input id="basic" type="radio" name="basic" value="850.00" checked="checked" class="hide">
选择之前项目的代码:
<div id="arms" class="dd-container">
<div class="dd-select">
<input class="dd-selected-value" type="hidden">
</div>
选择项目后的代码(在选择时动态添加):
<div id="arms" class="dd-container">
<div class="dd-select">
<input class="dd-selected-value" type="hidden" value="150.00|2" name="arm">
</div>
来自另外2个下拉菜单中的所选项目:
<div id="mechanism" class="dd-container">
<input class="dd-selected-value" type="hidden" value="0.00|18" name="mechanism">
</div>
<div id="fabric" class="dd-container">
<input class="dd-selected-value" type="hidden" value="0.00|185" name="fabric">
</div>
项目的所有值都使用以|分隔的价格值进行格式化后跟产品ID:value =&#34; price | ID&#34;
这是id =&#34;结果&#34;输入文本字段我想将所选项目中的值添加到:
<div class="totalHead">Total price: R<input type="text" name="total" id="result" class="result right">.00 </div>
每个下拉菜单的jQuery代码(我使用的是WordPress的jQuery()值):
jQuery(document).ready(function(){
$('#arms').ddslick({
data:armData,
width:380,
selectText: "Select your arm rest",
onSelected: function (data) {
$('#arms .dd-selected-value').prop('name', 'arm');
var arms = $("#arms .dd-selected-value").val().split('|');
}
});
$('#mechanism').ddslick({
data:mechData,
width:380,
selectText: "Select your mechanism",
onSelected: function (data) {
$('#mechanism .dd-selected-value').prop ('name', 'mechanism');
var mechanism = jQuery("#mechanism .dd-selected-value").val().split('|');
}
});
$('#base').ddslick({
data:baseData,
width:380,
selectText: "Select your base",
onSelected: function (data) {
$('#base .dd-selected-value').prop ('name', 'base');
var base = jQuery("#base .dd-selected-value").val().split('|');
}
});
$('#myDropdown').ddslick({
data:fabricData,
width:380,
selectText: "Select your fabric (or Back rest)",
onSelected: function (data) {
$('#myDropdown .dd-selected-value').prop ('name', 'fabric');
var fabric = jQuery("#myDropdown .dd-selected-value").val().split('|');
}
});
$('#myBaseDropdown').ddslick({
data:fabricData,
width:380,
selectText: "Select your base fabric",
onSelected: function (data) {
//console.log(data);
$('#myBaseDropdown .dd-selected-value').prop ('name', 'fabricBase');
var fabricBase = jQuery("#myBaseDropdown .dd-selected-value").val().split('|');
}
});
});
这是我开发的代码,用于在选择项目时获取值并总计值:
jQuery(document).ready(function(){
jQuery('#arms .dd-selected-value', '#mechanism .dd-selected-value', '#base .dd-selected-value', '#myDropdown .dd-selected-value', '#myBaseDropdown .dd-selected-value', '[name="quantity"]').on('change', function(){
var basic = jQuery("#basic").val();
var quantity = jQuery("[name='quantity']");
if("#arms .dd-selected-value".length > 0){
var b = parseInt(basic[0], 10);
var a = parseInt(arms[0], 10);
var m = parseInt(mechanism[0], 10);
var bs = parseInt(base[0], 10);
var f = parseInt(fabric[0], 10);
var fb = parseInt(fabricBase[0], 10);
var q = parseInt(quantity.val(), 10);
jQuery("#result").val((b + a + m + bs + f + fb) * q);
}
});
jQuery('#arms .dd-selected-value', '#mechanism .dd-selected-value', '#base .dd-selected-value', '#myDropdown .dd-selected-value', '#myBaseDropdown .dd-selected-value', '[name="quantity"]').trigger('change', function () {
});
我有默认值jQuery(&#34; #basic&#34;)。val();在页面加载时显示,但无法将所选项目添加到默认总计。
任何人都可以帮助告诉我为什么这不起作用吗?
另外,因为&lt; dd-selected-value&#39;在选择项目之前,输入字段没有值,.on(&#39;更改&#39;)事件是否相关?如果不是,我应该用什么来捕捉&#34;选择&#34;动作?