2012-01-05 38 views
1

即使在页面刷新后,我如何保留从下拉列表中选择的内容,以便用户知道他/她使用jquery选择了什么?或JavaScript?在回发中保留选定的下拉选项

<select id="hospitalDropDown" onchange="window.open(this.options[this.selectedIndex].value,'_top')"> 
     <option disabled="disabled">Select Hospital</option> 
     <option value="http://mysite.com/events/Pages/default1.aspx">All Hospitals</option> 
     <option value="http://mysite.com/events/Pages/default1.aspx?hos=Dyer">Dyer</option> 
     <option value="http://mysite.com/events/Pages/default1.aspx?hos=Carmel">Carmel</option> 
    </select> 
+0

回发?我会使用您选择的服务器端语言。 – Ryan 2012-01-05 02:55:04

+1

有几种方法可以做到这一点。最简单的可能是使用cookies。 – glortho 2012-01-05 02:55:05

+0

无法访问服务器!必须在客户端使用jquery或javascript来完成 – 2012-01-05 03:01:37

回答

1

试试这个:

<select id="hospitalDropDown" onchange="window.open('http://mysite.com/events/Pages/default1.aspx?hos='+this.value,'_top')"> 
    <option disabled="disabled">Select Hospital</option> 
    <option value="All">All Hospitals</option> 
    <option value="Dyer">Dyer</option> 
    <option value="Carmel">Carmel</option> 
</select> 

$(document).ready(function(){ 
    var value = window.location.href.match(/[?&]hos=([^&#]+)/) || []; 
    $('#hospitalDropDown').val(value[1]); 
}); 
+1

如果你最终需要一个更强大的方法来查询查询字符串(例如,每个请求多次),值得检查[在JavaScript中访问查询字符串的问题](http://stackoverflow.com/questions/901115/get- query-string-values-in-javascript)或者使用[URI.js](http://medialize.github.com/URI.js/)作为'window.location.href'。 – patridge 2012-01-05 18:49:17

0
<select id="hospitalDropDown"> 
    <option value="">All Hospitals</option> 
    <option value="Dyer">Dyer</option> 
    <option value="Carmel">Carmel</option> 
</select> 
<script type="text/javascript"> 

$(document).ready(function() { 
    $('#hospitalDropDown').val('<?php echo $_GET['hos']; ?>'); 
    $('#hospitalDropDown').change(function() { 
     location.href = 'http://mysite.com/events/Pages/default1.aspx?hos=' + $(this).val(); 
    }); 
}); 
</script> 
+0

他们没有提及访问PHP。事实上,他们评论说他们无法访问服务器端代码。这个答案在[你首先发布了这个确切答案的重复部分](http://stackoverflow.com/a/8743784/48700)的地方更加不正确,他们在问题中明确提出了这样一个要求。 – patridge 2012-01-05 14:43:30

相关问题