2011-04-01 42 views
0

nyone知道是否可以创建超链接的下拉列表。因此,除了替换文本字段的超链接外,列表中的每个项目还有一个值。想知道是否有任何jQuery或其他客户端脚本,可以让我把我的列表项名称变成链接。使用MVC2作为服务器端。 最终点击下拉列表中的任何链接将打开一个新窗口,这样人们不仅可以选择产品变体,还可以在提交表单之前在弹出窗口中查看所选产品变体的详细信息。是否可以创建超链接的下拉列表(不是菜单)

超链接将从项目值构建,这是productID,将在新窗口中打开的URL将作为外围项传递给操作方法。

目前使用该脚本来完成这项工作,但我必须采用按钮旁边的 下拉列表和它有点丑陋,因为你不会写上 按钮太多混乱。

function JumpToIt1(frm) { 
     var newPage = frm.droppa.options[frm.droppa.selectedIndex].value 
     if (newPage != "None") { 
      window.open("http://mydomain.com/category/" + newPage, "mywindow", "menubar=1,resizable=1,width=550,height=250"); 
     } 
    } 

回答

0
$(function() { 

    $('#dropdownId').change(function() { 
    var page = $(this).val(); 
    if (page != "None") { 
     window.open("http://mydomain.com/category/" + page, "mywindow", "menubar=1,resizable=1,width=550,height=250"); 
    } 
    }); 

}); 

请注意,只有当用户从当前选择的值中选择不同的值时才会打开新窗口。所以如果你删除你的按钮,用户将无法连续两次打开窗口,而无需先选择不同的值。

+0

在这一个只需添加代码来设置选择的值0,那么这将解决任何按钮可用$(“#mydropdown”)的问题VAL(“0”)。 ;这将成为下拉选项<选项值=“o”> - 选择页面 - – davethecoder 2011-04-01 12:44:19

0

你可以有一些导致它运行JavaScript时下拉的变化(即有人选择出来的东西列表)的onChange处理下拉。我认为那会做你想做的。

0

试试这个:

function openPopup(newPage){ 

     if (newPage != "None") { 
      window.open("http://mydomain.com/category/" + newPage, "mywindow", "menubar=1,resizable=1,width=550,height=250"); 
     } 

} 
    $(#dropdownId").find("option").each(function(){ 
    var $Obj= $(this); 
    $(this).text("<a href='javascript:void(0);' onclick='openPopup("+$Obj.val()+")'>" + $Obj.text() +"</a>"); 
    }); 
相关问题