从列表中获取第二个而不是使用jQuery选择的第二个

时间:2019-04-08 05:52:37

标签: javascript jquery asp.net

我需要保存所选的选项,但始终将第二个(选择后)与我的代码一起保存..为什么?

$(".dateTimeFilterIdentifierCls").change(function () {
    debugger;
    localStorage.setItem('ChosenDateIndexLS', $(".dateTimeFilterIdentifierCls").find(":selected")[0].index);
});

$(document).ready(function () {
    console.log("ChosenDateIndexLS is :: ", localStorage.getItem('ChosenDateIndexLS'));
    $(".dateTimeFilterIdentifierCls").prop('selectedIndex', localStorage.getItem('ChosenDateIndexLS')); 
});

aspx:

<div>
    <asp:DropDownList ID="dateTimeFilter" CssClass="dateTimeFilterIdentifierCls" runat="server" OnSelectedIndexChanged="dateTimeFilter_SelectedIndexChanged"
        onchange="bindControlEvents()" AutoPostBack="true" Visible="false">
    </asp:DropDownList>
    <label id="dateTimeFilterLabel" runat="server" style="padding-left: 15px" visible="false">
        בחירת מופע לפי תאריך</label>
</div>

HTML Rendered

1 个答案:

答案 0 :(得分:0)

好像正在生成选项。您可以尝试保存所选选项的value并随后应用它,而不是使用索引。

$(".dateTimeFilterIdentifierCls").change(function () {
    localStorage.setItem('ChosenDateIndexLS', $(".dateTimeFilterIdentifierCls").val());
});

$(document).ready(function () {
    console.log("ChosenDateIndexLS is :: ", localStorage.getItem('ChosenDateIndexLS'));
    $(".dateTimeFilterIdentifierCls").val(localStorage.getItem('ChosenDateIndexLS')); 
});