2013-12-19 22 views
0

我有一个3个按钮的jQuery对话框。它显示何时出现指定的错误。 我想要的是为每个按钮添加不同的路径,所以当用户点击它时,他被重定向到控制器的另一个页面或动作。带路径的jquery按钮

HTML:

//new.html.twig 

<div id="dialog-confirm" title="Atention Doublon"> 
    <p><span class="ui-icon ui-icon-alert" style="float:left; margin:30 7px 10px 10;"></span>{{person.prenom}} {{person.nom}} est déjà enregistré</p> 
</div> 

JQuery的:

<script src="http://code.jquery.com/jquery-1.9.1.js"></script> 
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script> 
    <script> 
     $(function() { 
      $("#dialog-confirm").dialog({ 
       resizable: false, 
       height: 200, 
       width: 500, 
       modal: true, 
       buttons: { 
        "Add": function() { 
         $(this).dialog("close"); 
        }, 
        "edit": function() { 
         $(this).dialog("close"); 
        }, 
        cancel: function() { 
         $(this).dialog("close"); 
        } 
       } 
      }); 
     }); 
    </script> 

有人能帮助我吗?另外请提一下我的代码中是否有错误,因为这很可能,我对jQuery不太熟悉。

+0

只需添加像'了window.location =“HTTP ://www.mozilla.org“;'在每个b uttun'function()'。见http://jsfiddle.net/7Zvqp/ – pattmorter

回答

0

只需添加:

window.location.replace("http://www.google.com"); 

或者

window.location.href("http://www.google.com"); 

这样:

buttons: { 
    "Add": function() { 
     window.location.replace('http://www.google.com'); 
     $(this).dialog("close"); 
    }, 
    "edit": function() { 
     window.location.replace('http://www.goole.com'); 
     $(this).dialog("close"); 
    }, 
    cancel: function() { 
     window.location.replace('http://www.google.com'); 
     $(this).dialog("close"); 
    } 
} 
+0

嗨,谢谢你的答案。 – Albee

0

好像你需要看看onclick函数,你可以附加到按钮。这将允许您通过href重定向,或者为每个按钮运行您选择的功能。

例子:<Button onclick="myFunction()">或JS object.onclick=function(){JSCodeHere};

0

我想你使用Symfony2的,所以你可以安装此bundle,并且可以生成URL从JavaScript这样的:Routing.generate('my_route_to_expose', { id: 10 });

0

这应该只是一样简单这样的:

jsFiddle demo

$("#dialog-confirm").dialog({ 
    resizable: false, 
    height: 200, 
    width: 500, 
    modal: true, 
    buttons: { 
     "Add": function() { 
      window.location.href = 'http://google.com'; 
      $(this).dialog("close"); 
     }, 
     "edit": function() { 
      window.location.href = 'http://yahoo.com'; 
      $(this).dialog("close"); 
     }, 
     cancel: function() { 
      window.location.href = 'http://microsoft.com'; 
      $(this).dialog("close"); 
     } 
    } 
}); 

请注意,您还没有指定jQueryUI样式表,因此您的对话框/灯箱可能无法正确显示。注意链接标签

<head> 
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
    <script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.min.js"></script> 
    <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.1/themes/base/jquery-ui.css" /> 
</head>