如何使用jQuery向下拉列表添加选项?

时间:2011-11-03 15:07:51

标签: jquery asp.net webforms

我正在尝试使用以下代码将选项添加到ASP.NET中的下拉列表中。任何想法为什么这不起作用?我试过谷歌搜索,但无法弄清楚为什么这不起作用。

代码的作用是什么?我有一个ASP.NET下拉列表。我想按名称访问下拉列表,并将项目添加到列表中。该项目应具有“Some Text”的描述性文本和值“123”。

谢谢!

$("#ddlCategory").append($("<option>Some Text</option>").val(1).html("123"));

5 个答案:

答案 0 :(得分:12)

var newOption = "<option value='"+"1"+"'>Some Text</option>"; 
$("#ddlCategory").append(newOption);

答案 1 :(得分:9)

你可以尝试

$("#ddlCategory").append($("<option value='123'>Some Text</option>");

 $('#ddlCategory').
      append($("<option></option>").
      attr("value", "123").
      text("Some Text")); 

此问题的第二个代码段What is the best way to add options to a select from an array with jQuery?

答案 2 :(得分:0)

您是否测试了1)您的jquery是正确的并且在一个平面HTML文件中工作; 2)您正在使用正确的Id - ASP.NET在runat =“server”的元素上动态更改Ids,因此您可能需要尝试:

$('#<%=ddlCategory.ClientID%>').append(...etc etc

这将从ASP.NET页面类中获取正确的ID。

答案 3 :(得分:0)

如果将其更改为

,该怎么办?
$("#ddlCategory").append($("<option></option>").attr("value", "1").text("Some Text"));

答案 4 :(得分:0)

尝试使用客户端代码向ASP.Net下拉列表添加选项是个坏主意。它介绍了各种回发问题。有关详细信息,请参阅this link。您应该完全填充下拉列表的客户端,或者触发部分回发以填充列表。