2014-06-09 43 views
0

我有一個超鏈接,我的控制器(使用jquery.get)調用刪除方法的其單擊事件,我面臨的問題是,它永遠不會被調用,刪除永遠不會完成,請查看代碼以獲得清晰的理解!jquery回調功能不工作

$('.hyp').click(function() { 
      var id = $(this).attr('href'); 
      alert(id); 

      //$('.' + delid).hide("slow"); 
      //$('#delid').remove(); 


      $.get('admin/deletecomment', { id:id }, function (data) { 
       if (data == 1) { 
        debugger; 
        alert("Deletion Done"); 

       } 
       else { 

        alert("error"); 
    } 
}); 
}); 


**controller method** 

public ActionResult deletecomment(int id) 
     { 
      var v = (dd.usercomments.Where(m => m.id == id).Select(m => m)).FirstOrDefault(); 
      if (v != null) 
      { 

       dd.usercomments.DeleteOnSubmit(v); 
       dd.SubmitChanges(); 
       return Json("1", JsonRequestBehavior.AllowGet); 

      } 
      else 
      { 
       return Json("0", JsonRequestBehavior.AllowGet); 

      } 



     } 

HTML

<h5 style="background-color:#808080;font-family:'Cambria Math';text-align:center;padding-top:1px;margin-right:16px;margin-top:5px">Comments Posted by User</h5> 
@foreach(var item in Model) 
{ 
<div class="parentd" id="@item.id" style="border:1px solid black;font-size:large;font-family:'Times New Roman';margin-right:6px;margin-bottom:2px">@item.userid 
    <a class="hyp" href="@item.id" style="position:relative;width:10px;height:10px;padding-left:10%;display:none"><img src="~/images/del.jpg" style="width:20px;height:20px"/></a><div class="@item.id" style="display:none">@item.comments</div> 
    </div> 
    } 
+0

顯示HTML以及 –

+0

檢查您的瀏覽器控制檯對任何錯誤.. – iJade

+0

@EhsanSajjad:我張貼的HTML也, @ijay:我檢查了控制檯沒有錯誤 – zaygum

回答

0

試試這個:

$.get('admin/deletecomment', {id: id}, function (data) { 
    if (data == 1) { 
     debugger; 
     alert("Deletion Done"); 
    } else { 
     alert("error"); 
    } 
}, "json"); // as response is json 

當您從控制器返回json這樣你就可以做到這一點。


爲測試條件下,如果你正在返回json那麼這必須是類似與{ key : value }雙一個js對象。

所以if (data == 1) {將是一個錯誤,而不是檢查你必須檢查是這樣的:

if (data.key == 1) { // only if you have something like { key : 1}