0

我正在尝试选择带有文本变量的下拉列表列表项或类似文本我的 jquery 甚至没有选择与我的代码在下面的列表项中相同的文本,

<asp:DropDownList ID="DDL_State" runat="server" Width="100px" Height="16px">
                    <asp:ListItem Text="" Value="0">State</asp:ListItem>
                    <asp:ListItem Text="Alabama" Value="1">Alabama AL</asp:ListItem>
                    <asp:ListItem Text="Alaska" Value="2">Alaska AK</asp:ListItem>
                    <asp:ListItem Text="Arizona" Value="3">Arizona AZ</asp:ListItem>
                    <asp:ListItem Text="Arkansas" Value="4">Arkansas AR</asp:ListItem>
 </asp:DropDownList>

var state='Alaska';
$("select[id$=ddlDropDownList]").val('Alaska');
        $("#<%=DDL_State.ClientID %> option[text='Alaska']").attr("selected","selected");
        $("#DDL_State").val(state);
        $("#DDL_State option:contains(" + state + ")").attr('selected', 'selected');
        $('#<%=DDL_State.ClientID%>').val(state);

它甚至没有给我任何错误,但可以确定 jquery 正确调用

希望您的建议?

谢谢

4

1 回答 1

1

Text不是asp:ListItemasp.net 中元素的有效属性。你应该把它放在值字段中,如果可能的话,像这样:

<asp:DropDownList ID="DDL_State" runat="server" Width="100px" Height="16px">
    <asp:ListItem Value="">State</asp:ListItem>
    <asp:ListItem Value="Alabama">Alabama AL</asp:ListItem>
    <asp:ListItem Value="Alaska">Alaska AK</asp:ListItem>
    <asp:ListItem Value="Arizona">Arizona AZ</asp:ListItem>
    <asp:ListItem Value="Arkansas">Arkansas AR</asp:ListItem>
</asp:DropDownList>
<script language="javascript" type="text/javascript">
    var state='Alaska';
    $('#<%=DDL_State.ClientID%>').val(state);
</script>

编辑 :

但是如果你想通过文本选择,你可以使用:

$('#<%=DDL_State.ClientID%>').find("option:contains(" + state + ")")
                             .prop("selected", true)
于 2013-01-10T08:02:15.393 回答