如何使用c#动态地在页面加载时在<select>标签中添加选项?

时间:2016-09-02 06:28:17

标签: c# jquery html ajax

我正在填充级联&lt; select&gt;使用jQuery ajax的数据库中的元素。只有一个问题:我无法在我的第一个&lt; select&gt;顶部添加默认的“选择程序”选项元素动态。 C#代码什么都不做,但是我使用jQuery prepend方法来做这件事并且它增加了值;但是当页面加载时它不会显示出来。而不是首先显示它从数据库获得的第一个值。这是我从数据库中检索数据的代码,我在页​​面加载时调用它:    public void GetPrograms()     {         string CS = ConfigurationManager.ConnectionStrings [“DBCS”]。ConnectionString;         使用(SqlConnection con = new SqlConnection(CS))         {             SqlCommand cmd = new SqlCommand(“spGetPrograms”,con);             SqlDataAdapter adp = new SqlDataAdapter(cmd);             DataSet ds = new DataSet();             adp.Fill(ds,“程序”);             con.Open();             program.DataSource = ds;             program.DataValueField =“ProgID”;             program.DataTextField =“ProgName”;             program.DataBind();             con.Close();         }     } 这些是页面的屏幕截图: 加载页面时未显示选择程序选项 选择选项在那里,但默认情况下未选中 这是jquery代码    $(“#program”)。prepend(新选项(“选择程序”,“0”));

2 个答案:

答案 0 :(得分:0)

您可以在服务器端自己执行此操作

program.Items.Insert(0, "Select Program");

更新由于OP希望从客户端执行此操作:

<select id="program">
      <option>Option 1</option>
      <option>Option 2</option>
      <option>Option 3</option>
    </select>

jQuery的:

$(document).ready(function(){

  $("select#program").prepend("<option value='0'>Select</option>");
  $("select#program").val("0");
  //alert($('option').length);
});

小提琴 - https://jsfiddle.net/wj00esyz/

答案 1 :(得分:0)

同时添加

program.SelectedIndex = 0;

插入“选择程序”后将其选中。