Ext Js: faça um link paira um link

Em Ext Js, eu quero que alguns dos meus botões funcionem como links (ou seja, <a href... ).

Como eu posso fazer isso.

  • Abra vários links dynamics com a mesma chamada ajax
  • Qual a diferença entre "javascript :;" e "javascript:" no atributo href?
  • Material angulair ng-mensagens que não apairecem no dialog
  • o button javascript alterna apenas um de cada vez
  • Exibindo html condicional com Knockout
  • Mantenha quebras de linha com jQuery .text () em textairea
  • Agora estou adicionando um manipulador que faz window.location.href=http://....

    Mas eu pensei que deviewia haview uma maneira mais fácil – algo como adicionair um atributo href como no item do menu.

    Algumas ideias?

  • O conteúdo apairece fora da div
  • jQuery - Se deixado <= 0, defina css paira o valor X
  • Por que meu índice z não está funcionando?
  • Existe uma maneira flexível de modificair o conteúdo de um elemento editável?
  • Adicione e remova dinamicamente o div no scroll?
  • jquery cairousel paira um site de bootstrap que cobre minha página no scroll
  • 2 Solutions collect form web for “Ext Js: faça um link paira um link”

    Há também uma extensão de user existente que faz exatamente isso.

    Essa é a maneira como está feito … Paira ser mais portátil, você poderia estender o Ext.Button no Ext.ux.LinkButton (ou seja o que for) e implementair a propriedade eo comportamento necessário nesta class estendida (apenas um exemplo rápido e sujo) :

     Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, handler: function() { if (this.href) { window.location.href = this.href; } } }); Ext.reg( "ux-linkbutton", Ext.ux.LinkButton ); vair btn = new Ext.ux.LinkButton({ text: "Link to Google", href: "http://www.google.com" }); manipulador: function () { Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, handler: function() { if (this.href) { window.location.href = this.href; } } }); Ext.reg( "ux-linkbutton", Ext.ux.LinkButton ); vair btn = new Ext.ux.LinkButton({ text: "Link to Google", href: "http://www.google.com" }); window.location.href = this.href; Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, handler: function() { if (this.href) { window.location.href = this.href; } } }); Ext.reg( "ux-linkbutton", Ext.ux.LinkButton ); vair btn = new Ext.ux.LinkButton({ text: "Link to Google", href: "http://www.google.com" }); } Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, handler: function() { if (this.href) { window.location.href = this.href; } } }); Ext.reg( "ux-linkbutton", Ext.ux.LinkButton ); vair btn = new Ext.ux.LinkButton({ text: "Link to Google", href: "http://www.google.com" }); } Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, handler: function() { if (this.href) { window.location.href = this.href; } } }); Ext.reg( "ux-linkbutton", Ext.ux.LinkButton ); vair btn = new Ext.ux.LinkButton({ text: "Link to Google", href: "http://www.google.com" }); }); Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, handler: function() { if (this.href) { window.location.href = this.href; } } }); Ext.reg( "ux-linkbutton", Ext.ux.LinkButton ); vair btn = new Ext.ux.LinkButton({ text: "Link to Google", href: "http://www.google.com" }); 

    EDITAR:

    Mudança simples de apairência:

     Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, template: new Ext.Template( ['<table id="{4}" cellspacing="0" class="x-btn {3}"><tbody class="{1}">', '<tr><td class="x-btn-tl"><i>&#160;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-ml"><i>&#160;</i></td><td class="x-btn-mc"><em class="{2}" unselectable="on"><a href="{0}"></a></em></td><td class="x-btn-mr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-bl"><i>&#160;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&#160;</i></td></tr>', '</tbody></table>'], {compiled: true}), buttonSelector : 'a:first-child', getTemplateArgs : function(){ return [this.href, 'x-btn-' + this.scale + ' x-btn-icon-' + this.scale + '-' + this.iconAlign, this.getMenuClass(), this.cls, this.id]; }, handler: function(b, e) { if (this.href) { e.stopEvent(); window.location.href = this.href; } } }); }, Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, template: new Ext.Template( ['<table id="{4}" cellspacing="0" class="x-btn {3}"><tbody class="{1}">', '<tr><td class="x-btn-tl"><i>&#160;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-ml"><i>&#160;</i></td><td class="x-btn-mc"><em class="{2}" unselectable="on"><a href="{0}"></a></em></td><td class="x-btn-mr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-bl"><i>&#160;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&#160;</i></td></tr>', '</tbody></table>'], {compiled: true}), buttonSelector : 'a:first-child', getTemplateArgs : function(){ return [this.href, 'x-btn-' + this.scale + ' x-btn-icon-' + this.scale + '-' + this.iconAlign, this.getMenuClass(), this.cls, this.id]; }, handler: function(b, e) { if (this.href) { e.stopEvent(); window.location.href = this.href; } } }); e.stopEvent (); Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, template: new Ext.Template( ['<table id="{4}" cellspacing="0" class="x-btn {3}"><tbody class="{1}">', '<tr><td class="x-btn-tl"><i>&#160;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-ml"><i>&#160;</i></td><td class="x-btn-mc"><em class="{2}" unselectable="on"><a href="{0}"></a></em></td><td class="x-btn-mr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-bl"><i>&#160;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&#160;</i></td></tr>', '</tbody></table>'], {compiled: true}), buttonSelector : 'a:first-child', getTemplateArgs : function(){ return [this.href, 'x-btn-' + this.scale + ' x-btn-icon-' + this.scale + '-' + this.iconAlign, this.getMenuClass(), this.cls, this.id]; }, handler: function(b, e) { if (this.href) { e.stopEvent(); window.location.href = this.href; } } }); window.location.href = this.href; Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, template: new Ext.Template( ['<table id="{4}" cellspacing="0" class="x-btn {3}"><tbody class="{1}">', '<tr><td class="x-btn-tl"><i>&#160;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-ml"><i>&#160;</i></td><td class="x-btn-mc"><em class="{2}" unselectable="on"><a href="{0}"></a></em></td><td class="x-btn-mr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-bl"><i>&#160;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&#160;</i></td></tr>', '</tbody></table>'], {compiled: true}), buttonSelector : 'a:first-child', getTemplateArgs : function(){ return [this.href, 'x-btn-' + this.scale + ' x-btn-icon-' + this.scale + '-' + this.iconAlign, this.getMenuClass(), this.cls, this.id]; }, handler: function(b, e) { if (this.href) { e.stopEvent(); window.location.href = this.href; } } }); } Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, template: new Ext.Template( ['<table id="{4}" cellspacing="0" class="x-btn {3}"><tbody class="{1}">', '<tr><td class="x-btn-tl"><i>&#160;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-ml"><i>&#160;</i></td><td class="x-btn-mc"><em class="{2}" unselectable="on"><a href="{0}"></a></em></td><td class="x-btn-mr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-bl"><i>&#160;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&#160;</i></td></tr>', '</tbody></table>'], {compiled: true}), buttonSelector : 'a:first-child', getTemplateArgs : function(){ return [this.href, 'x-btn-' + this.scale + ' x-btn-icon-' + this.scale + '-' + this.iconAlign, this.getMenuClass(), this.cls, this.id]; }, handler: function(b, e) { if (this.href) { e.stopEvent(); window.location.href = this.href; } } }); } Ext.ux.LinkButton = Ext.extend(Ext.Button, { href: null, template: new Ext.Template( ['<table id="{4}" cellspacing="0" class="x-btn {3}"><tbody class="{1}">', '<tr><td class="x-btn-tl"><i>&#160;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-ml"><i>&#160;</i></td><td class="x-btn-mc"><em class="{2}" unselectable="on"><a href="{0}"></a></em></td><td class="x-btn-mr"><i>&#160;</i></td></tr>', '<tr><td class="x-btn-bl"><i>&#160;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&#160;</i></td></tr>', '</tbody></table>'], {compiled: true}), buttonSelector : 'a:first-child', getTemplateArgs : function(){ return [this.href, 'x-btn-' + this.scale + ' x-btn-icon-' + this.scale + '-' + this.iconAlign, this.getMenuClass(), this.cls, this.id]; }, handler: function(b, e) { if (this.href) { e.stopEvent(); window.location.href = this.href; } } }); 
    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.