Проблема с функцией выбора JQuery в IE8 - PullRequest
0 голосов
/ 11 декабря 2010

Я использую IE8, я хочу показать форму с одним текстовым полем в качестве диалогового окна и показать указатель курсора в текстовом поле по умолчанию.
Это происходит, когда пользователь нажимает на ссылку на веб-странице. Для этого у меня есть код JQuery писателя, как показано ниже. Это отлично работает в Firefox, но не в IE8 (то есть курсор не отображается в первом текстовом поле). Есть предложения?

$("#show_myform").click(function(event) {
                    $("#myform").dialog({modal : true,draggable : false,resizable : false});
                    $("#myform :text:eq(0)").select();
});

Ответы [ 2 ]

2 голосов
/ 11 декабря 2010

Важно помнить, что вам не следует повторно создавать диалог.(См. http://blog.nemikor.com/2009/04/08/basic-usage-of-the-jquery-ui-dialog/ для более подробного объяснения.) В существующем коде ваш объект диалога будет воссоздан каждый раз, когда вы щелкаете элемент show_myform.

$("#myform").dialog({
  modal : true,
  draggable : false,
  resizable : false,
  open: function(event, ui) { 
    $("#myform :text:first").focus();
  },
  autoOpen: false
});

$("#show_myform").click(function(event) {
  $('#myform').dialog('open');
  return false;
});
1 голос
/ 11 декабря 2010

Полагаю, вы хотите использовать метод .focus () и, возможно, вы захотите сосредоточиться на открытии модального диалога

$("#show_myform").click(function(event) {
  $("#myform").dialog({
    modal : true,
    draggable : false,
    resizable : false,
    open: function(event, ui) { 
      $("#myform :text:eq(0)").focus();
    }
  });
});
...