简体   繁体   English

选项选择值更改

[英]Option selected value onchange

Hello this is my current code: 您好,这是我当前的代码:

<select id="link_course">
<option value="">Select Course</option>
<option value="ALL">ALL</option>
<option value="BSIT" selected>BSIT</option>
<option value="BSA">BSA</option>
<option value="BSBA">BSBA</option>
<option value="BSHRTM">BSHRTM</option>
</select>

<script>
    $("#link_course").change(function()
          {
              document.location.href = "home.php?course=" + $(this).val();

        });
</script>

If you click any of those options, for example BSBA, it will go to home.php?course=BSBA, and also you can see that the selected attribute is on the option BSIT. 如果单击其中任何一个选项(例如BSBA),它将转到home.php?course = BSBA,并且您还可以看到selected属性位于BSIT选项上。 What I wanted to do is whenever I click another link, for example BSHRTM, the selected attribute will go to BSHRTM like it would be <option value="BSHRTM" selected>BSHRTM</option> . 我想要做的是每当我单击另一个链接(例如BSHRTM)时, selected属性都将进入BSHRTM,就像<option value="BSHRTM" selected>BSHRTM</option> Any thoughts? 有什么想法吗?

You can do selection via JavaScript : 您可以通过JavaScript进行选择:

function getQueryVariable(variable)
{
       var query = window.location.search.substring(1);
       var vars = query.split("&");
       for (var i=0;i<vars.length;i++) {
               var pair = vars[i].split("=");
               if(pair[0] == variable){return pair[1];}
       }
       return(false);
}

if(getQueryVariable('course') != false) {
    $('#link_course option[value="' + getQueryVariable('course') + '"]').prop('selected', true);
}

Reference 参考

加载新页面后,您需要运行JavaScript代码以在列表中的正确项目上设置值。

Use window.location.href to get current URL. 使用window.location.href获取当前URL。 Then check on which page is user currently on and finally select corresponding option. 然后检查用户当前在哪个页面上,最后选择相应的选项。

if(window.location.href.indexOf('home.php?course=BSHRTM)') != -1) {
   $('select#link_course option[value=BSHRTM]').attr("selected","selected");
}

To avoid code duplication see Parse query string in JavaScript 为避免代码重复,请参阅在JavaScript中解析查询字符串

You should do it in PHP: 您应该在PHP中执行此操作:

<option value="BSHRTM" <?php if($course == 'BSHRTM') echo 'selected';?>>

Supposing that you previsously set $course = $_GET['course']; 假设您预先设置了$course = $_GET['course'];

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

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