SORU
15 Mayıs 2009, Cuma


JQuery UI iletişim < gönder;Girin>

Bir form ile jQuery UI iletişim kutusu var. Bu, fare veya sekmesini kullanmak zorunda değilsiniz, bu yüzden iletişim düğmeleri tek bir tıklama simüle etmek istiyorum. Diğer bir deyişle, GUI düzenli bir iletişim kutusu gibi bir oyuncu olmak istiyorum nerede taklit basarak, "TAMAM" düğmesine tıklayın.

Bu iletişim kutusu ile basit bir seçenek olabilir diye düşünüyorum ama jQuery UI documentation bulamıyorum. Keyup ile her form giriş bağlama olabilirim() ama eğer daha basit/temiz bir yolu varsa bilmiyorum. Teşekkürler.

CEVAP
15 Mayıs 2009, Cuma


Eğer bir seçenek var eğer oraya bilmiyorumjQuery UI widgetsadece iletişim içeren div keypress olay bind edebilirsin , ama...

$('#DialogTag').keypress(function(e) {
    if (e.keyCode == $.ui.keyCode.ENTER) {
          //Close dialog and/or submit here...
    }
});

Bu eleman olabilir ya da iyi bir şey olarak olmayabilir, iletişim, odak ne olursa olsun, istediğiniz ne yapacağız.

Eğer bu varsayılan işlevselliği yapmak istiyorsanız, bu kod parçası için ekleyebilirsiniz:

// jqueryui defaults
$.extend($.ui.dialog.prototype.options, { 
    create: function() {
        var $this = $(this);

        // focus first button and bind enter to it
        $this.parent().find('.ui-dialog-buttonpane button:first').focus();
        $this.keypress(function(e) {
            if( e.keyCode == $.ui.keyCode.ENTER ) {
                $this.parent().find('.ui-dialog-buttonpane button:first').click();
                return false;
            }
        });
    } 
});

İşte böyle görünürdü daha ayrıntılı bir görünüm:

$( "#dialog-form" ).dialog({
  buttons: { … },
  open: function() {
    $("#dialog-form").keypress(function(e) {
      if (e.keyCode == $.ui.keyCode.ENTER) {
        $(this).parent().find("button:eq(0)").trigger("click");
      }
    });
  };
});

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Defence Videos

    Defence Vide

    13 Mayıs 2013
  • Film Riot

    Film Riot

    16 NİSAN 2006
  • Hak5

    Hak5

    7 EYLÜL 2005