2014-01-12 4 views
0

У меня есть этот диалог, чтобы показать имя файла, когда вы нажимаете на значок. Когда я сначала кликнув по нему, диалоговое окно будет пустым, тогда я закрою его и снова откроет диалоговое окно с именем (через ajax). Затем, когда я снова закрою диалоговое окно и нажимаю на другой значок файла, он показывает первое имя файла. затем, когда я закрою его снова и снова открою, он покажет правильное имя файла. Почему он это делает?показывает тот же результат

Вот мой Javascript

$('.edit').click(function(e){ 

    e.preventDefault(); 
    var auth = $(this).attr('id'); 

    $.ajax({ 
     type: 'POST', 
     url: 'ajax/edit_filename.php', 
     data: {auth:auth}, 
     success: function(result){ 
      filename = result; 
     } 
    }); 

    $("#dialog").dialog({ 
     modal: true, 
     resizable: false, 
     title: 'Edit file name', 
     buttons: { 
      "Close": function() { 
       $(this).dialog("destroy"); 
       $(this).dialog("cancel"); 
      } 
     } 
    }); 

    $('.ui-dialog-content').html('<input type="text" value="'+filename+'"/>'); 
}); 

ответ

0

я работал, что я сделал неправильно, я звала диалоговое окно, прежде чем я получил ответ АЯКС

здесь правильный Javascript упаковывают это происходит с вами

$('.edit').click(function(e){ 

     e.preventDefault(); 
     var auth = $(this).attr('id'); 

     $.ajax({ 
      type: 'POST', 
      url: 'ajax/edit_filename.php', 
      data: {auth:auth}, 
      cache: false, 
      success: function(result){ 
       filename = result; 
      } 
     }); 
     $.post("ajax/edit_filename.php", { auth:auth }) 
      .done(function(data) { 

      $("#dialog").dialog({ 
       modal: true, 
       resizable: false, 
       title: 'Edit file name', 
       buttons: { 
        "Close": function() { 
         $(this).dialog("destroy"); 
         $(this).dialog("cancel"); 
        } 
       } 
      }); 
      $('.ui-dialog-content').html('<input type="text" value="'+data+'"/>'); 
     }); 
    }); 
Смежные вопросы