我正在将引导选择用于多个启用的下拉菜单。当按下按钮时,我正在构建一个要在 AJAX 请求中使用的变量。
它适用于返回值(在这种情况下基本上是 ID),因为它返回一个值数组,我可以使用循环来构建 JSON。但是我还需要发送文本值,但无法使其正常工作。
$('#sendButton').click(function() {
var modal = $('#modalPopup');
var modalID = modal.data('value');
var selectedOptionValue = $('#multiSelectBox').val();
var selectedOptionName = $('#multiSelectBox').text();
var sendRequest = {
'modalNo': modalID,
'products': []
};
for (var i = 0; i < selectedOptionValue.length; i++) {
sendRequest.products.push({
'productId': selectedOptionValue[i],
'productName': selectedOptionName
});
}
});
我selectedOptionName[j]在构建请求时尝试了另一个循环,但没有运气,我最终得到了下拉列表中的所有文本值。尝试使用:
var selectedOptionName = $('#multiSelectBox:selected').text();
但这不会返回任何东西。有任何想法吗?
下拉列表的 HTML:
<select class="selectpicker" multiple id="multiSelectBox" title="Select Product(s)"></select>
填充下拉列表的代码:
var html = '';
for (var i = 0; i < data.products.length; i++){
html += '<option value ="' + data.products[i].productId+ '">' + data.products[i].productName+ '</option>'
}
$('#multiSelectBox').html(html);
$('.selectpicker').selectpicker('refresh');