6

私はテーブルにたくさんの映画を表示していますが、最終的にはdivを非表示にするJavascriptを介して各映画を削除しています。

データベースからムービーも削除したいので、Javascriptからコントローラーメソッドを呼び出す最良の方法は何ですか?

4

4 に答える 4

6

コントローラで削除するHTTPPostアクションメソッドを用意するmovie

[HttpPost]
public ActionResult Delete(int id)
{
  try
  {
    repo.DeleteMovie(id);
    return "deleted"
  }
  catch(Exception ex)
  {
    //Log errror
  }
  return "failed";
}

そしてあなたの見解では、

<a href="#" data-movieId="34" class="movie">Delete Avengers</a>
<a href="#" data-movieId="35" class="movie">Delete Iron Man</a>
<script type="text/javascript">
$(function(){

   $(".movie").click(function(e){
     e.preventDefault();
     $.post("@Url.Action("Delete","Movie")", { id : $(this).data("movieId")} ,function(data){
        alert(data);
     });
   });
});

</script>
于 2012-06-08T13:51:45.327 に答える
4

コードによっては、次のように単純な場合があります。

$.post("/controller/method" + id);
于 2012-06-08T13:45:06.383 に答える
2

これを試してください:(jQueryAjaxを使用して)

$("#DeleteButtonID").on("click", function() {
    $.ajax(
    {
        type: "POST",
        page: 1,
        rp: 6,
        url: '@Url.Action("PopulateDataListWithHeader", "DataList")' + "?id=" + YOURID,
        dataType: "json",
        success: function(result) {

        },
        error: function(x, e) {

        }
    });
});
于 2012-06-08T13:56:36.360 に答える
0

これを試して、

function (){
   var url = '@Url.Action("SearchReoccurence", "SearchReoccurence", new { errormessage = "__msg__" })';
}
于 2016-08-11T10:13:18.033 に答える