无法检索“动态选择”框的值
Unable to retrieve the value of Dynamic Select box
我创建了一个按钮,用于检索两个选择框的值。我可以得到$("#parent_selection_pbrand").val(value.CellphoneBrand);
的值但是$("#child_selection_pmodel").val(value.CellphoneModel);
没有显示在选择框上的值。对此的任何帮助都非常感谢。提前谢谢。
function retrieveListItems() {
var title = $("#txtTitle").val();
var siteUrl = _spPageContextInfo.webAbsoluteUrl;
var fullUrl = siteUrl + "/_api/web/lists/GetByTitle('ComputerEquipment') /items?"+
"$select=Id,Title,Department,Location,CellphoneBrand,CellphoneModell,CellphoneIMEI&$filter=(Title eq '"+title+"')";
$.ajax({
url: fullUrl,
type: "GET",
headers: {
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
},
success: onQuerySucceeded,
});
function onQuerySucceeded(data) {
var listItemInfo = '';
$.each(data.d.results, function (key, value) {
$("#parent_selection_pbrand").val(value.CellphoneBrand);
$("#child_selection_pmodel").val(value.CellphoneModel);}
HTML代码
<strong>Brand:</strong>
<div class="wrapper">
<select name="parent_selection_pbrand" id="parent_selection_pbrand">
<option value="">--Please Select--</option>
<option value="Apple">Apple</option>
<option value="Samsung">Samsung</option>
</select>
<select name="child_selection_pmodel" id="child_selection_pmodel">
</select>
JavaScript var Apple = [
{display: "iPhone5", value: "iPhone5" },
{display: "iPhone6", value: "iPhone6" }];
var Samsung = [
{display: "Samsung S5", value: "Samsung S5" },
{display: "Samsung S6", value: "Samsung S6" }];
//If parent option is changed
$("#parent_selection_pbrand").change(function() {
var parent = $(this).val(); //get option value from parent
switch(parent){ //using switch compare selected option and populate child
case 'Apple':
listphone(Apple);
break;
case 'Samsung':
listphone(Samsung);
break;
default: //default child option is blank
$("#child_selection_pmodel").html('');
break;
}
});
//function to populate child select box
function listphone(array_list)
{
$("#child_selection_pmodel").html(""); //reset child options
$(array_list).each(function (i) { //populate child options
$("#child_selection_pmodel").append("<option value='""+array_list[i].value+"'">"+array_list[i].display+"</option>");
});
}
在<select>
元素上设置.val()
,只有当<select>
中有相应的<option>
元素具有该值时才有效。如:
<select id="child_selection_pmodel">
...
<option value="test">Test</option>
</select>
如果我在本例中选择$("#child_selection_pmodel").val("test")
,它将更改为选项Test
。否则什么也看不见。在您的情况下,似乎没有一个选项的值value.CellphoneModel
在child_selection_pmodel
被填充后。
如果你想添加到<select>
,你可以使用.append()
:
$("#child_selection_pmodel").append("<option value='...'>...</option>");
相关文章:
- 使用php动态更改选择选项
- 动态填充Bootstrap选择选择器:change event dos'不起作用
- jquery从多维数组中进行动态相关选择
- 此代码中动态生成选择框有什么问题
- 如何动态更新选择值
- Jquery - 创建动态名称选择器
- jsp HELP pls中的动态相关选择框
- 基于html属性的动态jquery选择器
- 单击按钮可多次动态添加选择框、文本框和日期,并将这些值插入数据库
- 根据动态值选择和取消选择复选框
- Jquery动态元素选择器
- 在填充另一个选择框时动态添加选择框
- AngularJS动态创建选择框-ngModel未注册
- 如何在 HTML 中动态生成选择框和文本字段
- JQuery - 无法动态添加选择选项
- JavaScript 中的动态类选择
- 如何制作动态名称选择器(无限)
- 从 mysql 获取行集,并使用 php 和 Codeigniter 中的 jquery 生成动态范围选择器框
- 根据指定长度的输入文本从数据库动态填充选择框
- 使用 jquery 从 json 数据文件动态填充选择元素