2017-04-03 24 views
1

私は、データベースに新しいレコードを作成するためのビューを持っています。部分ビューここAJAX Sucess(ASP.NET MVC)のモーダルを閉じる

でそれのための

ビューは、ビューのコードである

<script src="~/Scripts/jquery-3.1.1.js"></script> 
AJAXのために、私はこのコード

<script> 
    $(document).ready(function() { 
     $('#save_quest').click(function() { 
     savequestion(); 
    }); 
}); 
    function savequestion() { 
     $.ajax({ 
      type: 'Post', 
      dataType: 'Json', 
      data: { 
       Question_new: $('#question').val(), 
       Answer: $('#answer').val(), 
       Preparing: $('#prepare').val(), 
       Retries: $('#retries').val(), 
        }, 
      url: '@Url.Action("CreateNewQuestion", "Questions")', 
      success: function (da) { 
       if (da.Result === "Success") { 
        $('#myModal').modal('hide') 
        //window.location.href = da.RedirectUrl; 

       } else { 

        alert('Error' + da.Message); 
       } 
      }, 
      error: function (da) { 
       alert('Error'); 
      } 
     }); 
    } 
を使用して

私は

私はここでは、この$('#myModal').modal('hide')

がある試みるAJAX呼び出しが成功すると、モーダルを非表示にする必要がありますプリムの私のモーダル私はAJAXの成功の上にそれを隠すことができますどのように進表示

<div class="modal fade" id="myModal" role="dialog" data-backdrop="false"> 
<div class="modal-dialog"> 

    <!-- Modal content--> 
    <div class="modal-content"> 
     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal">&times;</button> 
      <h4 class="modal-title">Modal Header</h4> 
     </div> 
     <div class="modal-body"> 
      @Html.Partial("~/Views/Questions/CreateQuestion.cshtml") 
     </div> 
     <div class="modal-footer"> 
      <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
     </div> 
    </div> 

</div> 

+1

コンソールにエラーがありますか?デバッガまたは 'console.log()' 'を使ってこの行をチェックしてください。da.Result ===" Success "'それは 'true'または' false'を返します – Curiousdev

答えて

1

あなたのajaxの成功ブロックでは、以下のオプションを試すことができます。うまくいけば、それはあなたの問題を解決します。

 $("#myModal").modal('hide'); 
    OR 
     $('#myModal').modal('toggle'); 
    OR 
     $('#myModal').removeClass('show'); 
    OR 
     $('#myModal').modal().hide(); 
    OR 
     $("#myModal .close").click(); 
    OR 
     $("#myModal .close").trigger("click"); 
0

私はただ、これは適切な方法ではありません

$('#myModal').hide();

0

を記述する必要があります。解決策

を見つけました $( '#myModal')。hide();

適切な方法 $( "#myModal")。modal( 'hide');

あなたのページにbootstrap.jsを追加してみませんか?そうでない場合は、ページに含めてテストしてください。それは動作するはずです。

関連する問題