2017-04-24 44 views
0

我想保留下拉列表选定的值后回发,我想努力了解如何在回发后保留下拉列表选定的值。保留从下拉列表中选择的值后回发由javascript

这个功能我都被选择从下拉列表值,我把它保存在本地存储:在页面加载

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> 

我试过了很多没有工作的选项

你有什么建议吗?谢谢。

回答

0

此作品:

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

$('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/

0

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

存储值之前的选择同样适用,尽管我猜你的代码也适用于此。

+0

我想获得选定的价值不仅值 – ahosam

+0

一个'select'字段的值,是选择的值。请参阅:http://api.jquery.com/val/ – kalsowerus

相关问题