2013-02-11 46 views
0

当涉及到这样的事情时有点无知,但是如果有人能够协助我,我会非常感激。将JavaScript合并到href标记中

我在毫秒表达网页嵌套的CSS垂直下拉菜单,以前我用asp.net内置函数来创建一个下拉列表,并执行以下操作:

<select size ="1" name="main10" onchange="window.open(this.options[this.selectedIndex].value,'main')"style="width: 290px"> 
有一些额外的代码一起

有下拉内容出现在一个iframe中,并根据内容调整所述iframe的大小(即消除滚动条和其他脏乱)

但是,表达式不容易嵌套下拉菜单,我不得不尝试不同的方法。

我需要将上面的代码合并到这个:<li><a href="#">Some Text Here</a></li>很多次,有不同的URL,链接到站点内的各个页面。

我试图尽可能描述,但我毫无疑问错过了一些重要的信息,所以请问,如果我不清楚。

+1

你为什么要使用Javascript? – SLaks 2013-02-11 21:15:27

+0

无论如何,HTML都不允许使用SELECT嵌套下拉菜单。 – 2013-02-11 21:15:52

+0

对不起,但你真正的问题是什么?你描述了你的设置和你尝试过的一些事情,但我不知道你在问什么。 – 2013-02-11 21:16:28

回答

0

如果我正确理解你,你只需要点击一个锚标签来运行一些JS。如果是这样,你可以这样做:

<li><a href="#" onclick="your JS here;">Some Text Here</a></li> 

这将是自单击处理一个好主意,return false;太,防止默认点击动作,如果你把href所需的URL属性链接会即使对于禁用了JS的用户仍然可以工作。因此,与您的window.open是放在一起:

<li><a href="http://xyz.com" onclick="window.open(this.href,'main');return false;">Some Text Here</a></li> 

给你打算有很多这些链接的你不想被重复window.open()无处不在,所以:

<li><a href="http://x.com" onclick="return doOpen(this.href);">X Here</a></li> 
<li><a href="http://y.com" onclick="return doOpen(this.href);">Y Here</a></li> 
<li><a href="http://y.com" onclick="return doOpen(this.href);">Z Here</a></li> 

<script> 
function doOpen(url) { 
    window.open(url, 'main'); 
    return false; 
} 
</script> 
+0

它的工作原理! 非常感谢你,你不知道你有多少潜在的心痛幸免于我! – user2062729 2013-02-11 21:36:26

+0

哦,不,它不能正常工作...... 由此产生的iframe有一个滚动条,这是我试图避免的第一个地方 – user2062729 2013-02-11 21:40:39

+0

为什么鼓励使用'onclick'属性?我会指向提供不引人注目的JavaScript的提问者... – 2013-02-11 21:45:48