2015-11-02 64 views
1

在下面的代码中,我有动态下拉列表,我想要一个值被选中。但是,当我传递一个值被选中。没有值越来越binded.Ples帮我做到这一点。将选定的值设置为动态下拉

if (type == "DropDownList") { 
      newdiv.innerHTML += "<select class=\"form-control\" data-error=\"Please Provide " + DisplayName + "\" name=\"" + Name + "\" id=\"" + Name + "\"/>"; 
       $('#divComplete').append(newdiv); 
      Load(id, Name, FieldValue); 
     } 


function Load(sFieldID, sControleID, FieldValue) { 

     alert(FieldValue);  if (sFieldID == '') 
      return; 

     var dataString = JSON.stringify({ 
      strProjectID: iProjectID 

     }); 

     $.ajax({ 
      type: "POST", 
      contentType: "application/json; charset=utf-8", 
      url: "Sample.aspx/test", 
      dataType: "json", 
      async: false, 
      data: dataString, 
      success: function (data) { 
       var locations = JSON.parse(data.d); 
       $('#' + sControleID).html(""); 
       $.each(locations, function (i, item) { 
        alert(item); 

        $('#' + sControleID).append($('<option selected=\"true\" value=\"' + FieldValue + '\">', { 
         value: item.EnumText, 
         text: item.EnumText 
        })); 
       }); 

      }, 
      error: function (result) { 
      } 
     }); 
    } 
+2

什么是id'的'值(传递给'负荷()')?它是否设置?正如预期的那样,您的'alerts()'是否有很多'item's? 'data.d'包含什么? –

+0

[Set selected selected option of select box]可能重复(http://stackoverflow.com/questions/4680075/set-selected-option-of-select-box) – IROEGBU

回答

0

您可以使用标签jQuery的.val()方法:

$('select').val('c');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<select> 
 
    <option>a</option> 
 
    <option>b</option> 
 
    <option>c</option> 
 
    <option>d</option> 
 
</select>

+0

这不起作用 – Dotnet

+0

我误解了你的问题吗?你想动态选择一个'select'标签的值,这就是上面的代码所做的。如果你点击“运行代码片段”,你会得到一个选择,其值为“c”,这是第三个选项。删除jquery片段将会呈现一个'select',默认值为'a' – Stefan