简体   繁体   English

记住选择onchange的列表选项

[英]Remember select list option for onchange

Here is my code; 这是我的代码;

<select onchange="location = this.options[this.selectedIndex].value;"> 
  <option value="">Select Something</option> 
  <option value="<?php echo site_url(); ?>">Home</option> 
  <option value="<?php echo site_url(); ?>publications">Publications</option> 
  <option value="<?php echo site_url(); ?>contact_us">Contact Us</option> 
</select>

When an option is selected, that page will immediately load. 选择一个选项后,该页面将立即加载。 However, the drop-down list does not "remember" that that option was selected. 但是,下拉列表并不“记住”该选项已被选择。 The drop-down list will just default back to Select Something. 下拉列表将默认恢复为“选择某物”。 How can I get the list to display what was selected instead? 如何获取列表以显示选择的内容?

Before I began using Frameworks I might have tried something like this; 在开始使用Frameworks之前,我可能已经尝试过类似的方法。

<option value="<?php echo site_url(); ?>contact_us" <?php if($value == "contact_us") {echo "selected"; } ?> >Contact Us</option>

And I would have created a $value using $_REQUEST['value'] or something. 我会使用$ _REQUEST ['value']或其他东西创建一个$ value。 But I am using the CodeIgniter framework so I don't think I can do that anymore. 但是我正在使用CodeIgniter框架,所以我认为我不能再这样做了。

This may help you: 这可以帮助您:

<?php if($value == $_SERVER["REQUEST_URI"]) {echo "selected"; } ?>

I suggest from your code that you have some php $value -es equal to every option value. 我从您的代码中建议您有一些php $value -es等于每个选项值。 So, you can compare it with web page URI 因此,您可以将其与网页URI进行比较

More about $_SERVER global 有关$ _SERVER全球的更多信息

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM