2016-10-12 11 views
0

ダイアログを再オープンした後、オートコンプリートが機能しません。jQueryUIオートコンプリートダイアログを1回だけ使用する

var create_product = function() { 
    isEdit = false; 
    $(".dialog_create_product").dialog({ 
     autoOpen: true, 
     width: 800, 
     modal: true, 
     buttons: {}, 
     open: function (event, ui) { 
    =>  $(".getInputComponent").autocomplete({ 
       source: ['1','2','3'], 
      }); 
     }, 
     close: function (event, ui) { 
      $(".dialog_create_product").dialog("destroy") 
     }, 
     beforeClose: function (event, ui) { 
      closeDialog(); 
     } 
    }); 
}; 

HTML

<div class="divInput"align="center"> 
    <input class = "getInputComponent" placeholder="name" type="text" maxlength="50"><button class="addComponent" >Add</button> 
</div> 

でもダイアログの機能のうち、オートコンプリートif文。

$(".dialog_create_product").on("dialogopen", function(event, ui) {$(".getInputComponent").autocomplete({source: ['1','2','3']});}); 

または

$(document).on("dialogopen", function(event, ui) {$(".getInputComponent").autocomplete({source: ['1','2','3']});}); 
+0

close: function (event, ui) { $(".dialog_create_product").dialog("close") }, 

変更を書いたあなたはより多くの詳細を説明することができ、あなたが実際に何をしたいですか? – Fiido93

+0

私は、ダイアログを複数回使用します。それを開いていくつかの変更を行い、それを保存します。しかし、2回目にダイアログを開くと、オートコンプリートフォームが空になります。私が '.dialog(" close ")'を実行すると正常に動作しますが、 '.dialog(" destroy ")'を使用し、 'destroy 'を使うとバグがあります。 –

答えて

0

あなたはこの

close: function (event, ui) { 
     $(this).dialog('destroy').remove() 
}, 
+0

このダイアログを閉じた後はもう開きません –

関連する問題