【问题标题】:keep selected value from dropdown after postback by javascript通过javascript回发后保留下拉列表中的选定值
【发布时间】:2017-04-24 13:47:04
【问题描述】:

我想在回发后保留下拉列表选择的值,我正在努力理解如何在回发后保留下拉列表选择的值。

在此函数中,我从下拉列表中获取选定的值并将其保存在本地存储中:

document.onreadystatechange = function () {
    if (document.readyState === 'complete') {
        window.localStorage.setItem("Rooms", $("#Rooms option:selected").val());
        window.localStorage.setItem("Persons", $("#Persons option:selected").val());
        window.localStorage.setItem("Childrens", $("#Childrens option:selected").val());
    }
}

在页面加载时,我调用了 adddate() 函数:

function AddDate() {
    var date = moment();

    document.getElementById('Arrival').value = date.format('DD/MM/YYYY');
    document.getElementById('Departure').value = date.add(1, 'days').format('DD/MM/YYYY');
    $("#Arrival").val(window.localStorage.getItem("Arrival"));
    $("#Departure").val(window.localStorage.getItem("Departure"));
    $("#Rooms option:selected").val(window.localStorage.getItem("Rooms"));
    $("#Persons option:selected").val(window.localStorage.getItem("Persons"));
    $("#Childrens    option:selected").val(window.localStorage.getItem("Childrens"));
}; 
window.onload = AddDate;

以下是我的选择列表:

<select id="Rooms" name="Rooms" class="dropdown">
    @for (int i = 1; i <= Model.MaximumNumberOfRooms; i++){
        <option value="@i">@i</option>
    }
</select>

我尝试了许多无效的选项

你有什么建议吗?谢谢。

【问题讨论】:

    标签: javascript jquery asp.net


    【解决方案1】:

    这行得通:

    更改下拉菜单并刷新页面。

       $('document').ready(function(){
          $("#Rooms").val(window.localStorage.getItem("Rooms"));
       });
    
       $("#Rooms").on('change',function(e){      
           window.localStorage.setItem("Rooms", $("#Rooms option:selected").val()); 
       });
    

    https://jsfiddle.net/HappyiPhone/rpnoarof/1/

    【讨论】:

      【解决方案2】:

      您正在设置#Rooms option:selected 的值,这将不起作用。请改用$("#Rooms").val(...)

      在存储值之前进行选择也是如此,尽管我猜你的代码也可以在那里工作。

      【讨论】:

      • 我想获取选定的值而不仅仅是值
      • select 字段的值是选定的值。见:api.jquery.com/val
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-30
      • 2014-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多