下拉列表中的OnClick()事件

时间:2010-09-13 12:32:45

标签: javascript html asp-classic

我有一个下拉菜单。当我在下拉列表中点击“意大利语”时,我想要显示意大利语的内容。基本上,当我从下拉列表中选择意大利语时,我想要的是将操作设置为IT。我该如何评价这个?

 <% action = Request.QueryString("action") %>

    <form name="contentchanger" action="/" method="post">
         <select name="flag" name="flag">
              <option value="Choose" selected="selected">Choose</option>
              <option value="italian" onclick="what code i should use here?">Italian</option>
         </select>
    </form>
    <a href="?action=FR">FR</a>
    <a href="?action=IT">IT</a>

    <%
    if action = "IT" Then  
      Response.Write("<p>This is italian</p>") 
    else if  action = "FR" Then  
      Response.Write("<p>This is French</p>") 
    end if
    end if
    %>

1 个答案:

答案 0 :(得分:4)

最好在选择框中使用onchange事件。 Onclick在所有浏览器中都不能正常工作。将javascript函数绑定到onchange事件,该事件更改a元素的url(如果要立即更改,则重定向到正确的url)。

这样的事情应该有效。如果你想做更多的交互式客户端功能,我建议使用像jquery这样的javascript库

changeLanguage()

<select onchange="changeLanguage(this.value)">
    <option value="Choose" selected="selected">Choose</option>
    <option value="IT" >Italian</option>
    <option value="FR" >France</option>
</select>

<a id="url" href="?action=IT">IT</a>

使用Javascript:

function changeLanguage(language) {
    var element = document.getElementById("url");
    element.value = language;
    element.innerHTML = language;
}

<强>更新

我用于测试的代码。这适用于最新版本的chrome,firefox和ie。

<html>
<head>
 <script>
  function changeLanguage(language) {
   var element = document.getElementById("url");
   element.value = language;
   element.innerHTML = language;
  }
 </script>
</head>
<body>
<select onchange="changeLanguage(this.value)">
    <option value="Choose" selected="selected">Choose</option>
    <option value="IT" >Italian</option>
    <option value="FR" >France</option>
</select>

<a id="url" href="?action=IT">IT</a>
</body>
</html>