0

Я развивающимся оконное слово Task надстройки с помощью JavaScript API, я использовал ниже код, чтобы создать DialogBox JQuery динамически с помощью функции:страницы автоматически перейти к вершине при открытии динамического диалога ящика Jquery первого раза

function myConfirm(dialogText, okFunc, cancelFunc, dialogTitle) { 
     $('<div style="padding: 10px; max-width: 500px; word-wrap: break-word;">' 
           + dialogText + '</div>').dialog({ 
      draggable: true, 
      modal: true, 
      resizable: false, 
      width: 'auto', 
      title: dialogTitle || 'Confirm', 
      minHeight: 75, 
      position: { 
       my: "center", 
       at: "center", 
       of: window 
      }, 
      buttons: { 
       OK: function() { 
        if (typeof(okFunc) == 'function') { 
         setTimeout(okFunc, 50); 
        } 
        $(this).dialog('destroy'); 
       }, 
       Cancel: function() { 
        if (typeof(cancelFunc) == 'function') { 
         setTimeout(cancelFunc, 50); 
        } 
        $(this).dialog('destroy'); 
       } 
      } 
     }); 
    } 

Но когда я открываю его в первый раз вызвать myConfirm функцию, страница прокрутки идет вверх и когда я прокрутите вниз, чтобы нажать на диалоговом окне снова отправить свиток обратно наверх, то мне нужно еще раз прокрутить вниз , теперь я могу нажать на кнопки диалогового окна. он работает отлично после первого.

Мне нужно установить динамический текст окна и функции на нажатия кнопок, поэтому я создаю его динамически. Я также тестировал его в Internet Explorer, он работает нормально.

Пожалуйста, советую, как я могу исправить это для добавления слов.

ответ

0

Вы можете попробовать ниже код, когда вы вызываете вашу функцию: -

onclick="myConfirm();return false;" 

Просто добавьте «возвращение ложным;» после имени вашей функции, как показано выше.

Edit 1: -

Или вы можете вернуть ложь от вашей функции, а также.

Edit 2: -

$form.show().dialog({ 
       close: function (event) { event.preventDefault(); } 
       resizable: false, 
       etc.... 
      }); 
+0

Я вызвал метод myConfirm внутри click, например: $ ('# use-design'). On ("click", function (e) {e.preventDefault(); myConfirm (params);}); – Amit

+0

ok просто добавьте «return false»; наконец, в функции myConfirm. –

+0

Я пробовал, но не работал. – Amit