Javascript 如何使onchange下拉选项url在我的页面中打开 ESPN 有线电视新闻网 基础知识 哥伦比亚广播公司 狐狸 var urlmenu=document.getElementById('menu1'); urlmenu.onchange=函数(){ window.open(this.options[this.selectedIndex].value); };

Javascript 如何使onchange下拉选项url在我的页面中打开 ESPN 有线电视新闻网 基础知识 哥伦比亚广播公司 狐狸 var urlmenu=document.getElementById('menu1'); urlmenu.onchange=函数(){ window.open(this.options[this.selectedIndex].value); };,javascript,jquery,html,Javascript,Jquery,Html,我有这个代码,我想通过点击我的页面中选择的打开!不要再打开一个!谢谢大家! <html> <head> </head> <body> <select name="menu1" id="menu1"> <option value="http://www.espn.com">ESPN</option> <option value="http://www.cnn.com">CNN</option

我有这个代码,我想通过点击我的页面中选择的打开!不要再打开一个!谢谢大家!

   <html>
<head>
</head>
<body>
<select name="menu1" id="menu1">
<option value="http://www.espn.com">ESPN</option>
<option value="http://www.cnn.com">CNN</option>
<option value="http://www.abcnews.com">ABC</option>
<option value="http://www.cbsnews.com">CBS</option>
<option value="http://www.foxnews.com">FOX</option>
</select>
<script type="text/javascript">
 var urlmenu = document.getElementById( 'menu1' );
 urlmenu.onchange = function() {
      window.open( this.options[ this.selectedIndex ].value );
 };
</script>
</body>
</html>
如果要在当前窗口中打开链接,请将
窗口。打开
更改为
窗口。位置
<代码>窗口。打开在新选项卡中打开链接

然而,jQuery代码工作得很好

var urlmenu = document.getElementById( 'menu1' );
urlmenu.onchange = function() {
  window.location.href(document.getElementById("menu1").value);
};
尝试更改此选项:

var urlmenu = document.getElementById('menu1');
urlmenu.onchange = function() {
  window.location.href = $("#menu1 option:selected").val();
};
为此:

window.open( this.options[ this.selectedIndex ].value );
使用以下命令:

window .location.href = $("#menu1 option:selected").val();
窗口。打开(URL、名称、规格、替换): 其中名称:

urlmenu.onchange = function() {
  window.open( this.options[ this.selectedIndex ].value, '_self');
};

您以前的代码运行良好:

_blank - URL is loaded into a new window. This is default
_parent - URL is loaded into the parent frame
_self - URL replaces the current page
_top - URL replaces any framesets that may be loaded
name - The name of the window (Note: the name does not specify the title of the new window)

一种简单的javascript实现方法:

var urlmenu = document.getElementById('menu1');
urlmenu.onchange = function() {
    location.href = $("#menu1 option:selected").val();
};

函数handleChange(){
var arr=document.getElementById('menu1');
window.location=arr.value;
} 
ESPN
有线电视新闻网
基础知识
哥伦比亚广播公司
狐狸

添加第二个参数
\u self

<html>
    <head>
        <script type="text/javascript">
        function handleChange() {
            var arr = document.getElementById( 'menu1' ) ;
            window.location = arr.value ;
        } 
        </script>
    </head>
    <body>
        <select name="menu1" id="menu1" onchange="handleChange()">
            <option value="http://www.espn.com">ESPN</option>
            <option value="http://www.cnn.com">CNN</option>
            <option value="http://www.abcnews.com">ABC</option>
            <option value="http://www.cbsnews.com">CBS</option>
            <option value="http://www.foxnews.com">FOX</option>
        </select>        
    </body>
</html>

ESPN
有线电视新闻网
基础知识
哥伦比亚广播公司
狐狸
var urlmenu=document.getElementById('menu1');
urlmenu.onchange=函数(){
window.open(this.options[this.selectedIndex].value,'u self');
};

函数getValue(值){
var href=值;
如果(href)窗口打开(href,“_self”);
}
ESPN
有线电视新闻网
基础知识
哥伦比亚广播公司
狐狸

不要使用额外的JavaScript代码。仅使用带有onchange属性的HTML选择选项

在选择选项上使用此onchange属性

<script>
function getValue(value){ 
var href = value; 
 if (href) window.open(href,"_self");
}
</script>
<select name="menu1" id="menu1" onchange="getValue(this.value);">
  <option value="http://www.espn.com">ESPN</option>
  <option value="http://www.cnn.com">CNN</option>
  <option value="http://www.abcnews.com">ABC</option>
  <option value="http://www.cbsnews.com">CBS</option>
  <option value="http://www.foxnews.com">FOX</option>
</select>
完成选择选项菜单

onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);"

选择一个项目
成员报告
对账单
员工报告
分学科报告
区域报告
指定报告
希望它能为您提供更好的解决方案


谢谢

您以前的代码有什么问题?更改
窗口。打开
位置。href
。有什么问题?你的代码正在为我工作,它仍在一个新窗口中打开
window.location
window.location.href
是只读属性,如所示。在为
window.location.href
赋值时,技术上是可行的,如果这一点发生变化,将来可能会导致不良行为。最好使用
open
方法,因为行为是已知的。它正在工作,但它正在另一个页面中创建链接!我在我的网页上留言!请检查“\u top”对我不起作用。我猜这是'自我'根据有趣!!!'_“top”在JsBin中不是在“编辑”模式下工作,而是在“查看”模式下工作。
onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);"
<select onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);">
<option value="">Select an Item</option>
<option value="Member.html">Member Report</option>
<option value="Account.html">Account Statement</option>
<option value="Employee.html">Employee Report</option>
<option value="Branch.html">Branch Report</option>
<option value="Area">Area Report</option>
<option value="Designation.html">Designation Report</option>