2012-09-24 128 views
0

我正在開發MVC 3應用程序並使用剃刀語法。Appended Div無法正常工作

在這個應用程序中,我給評論設施。

當用戶點擊添加註釋按鈕時,它會保存在數據庫中,並且它也附加在當前Div中。

請檢查圖像...

這是添加新評論之前的圖像...

enter image description here

此圖片是增加新的評論後...

enter image description here

現在,我的問題是,當用戶點擊新添加的評論的刪除按鈕我想顯示味精 - 「刪除過程開始這裏...」,但其現在的工作...

這是我的代碼...

<script src="../../Scripts/jquery.validate.min.js" type="text/javascript"></script> 

@model IEnumerable<CRMEntities.Comment> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 



//Button which Saves currently added comment in DB as well display on screen... 
<script src="../../Scripts/jquery.js" type="text/javascript"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#AddCommentButton').click(function() 

     {  

     // alert("clicked"); 
      $.ajax({ 

       type: 'post', 
       url: '/Comment/SaveComments', 
       dataType: 'json', 
       data: 
       { 

       'comments' : $('#Comment').val(), 
       'EType' : @Html.Raw(Json.Encode(ViewBag.EType)), 
        'EId' : @Html.Raw(Json.Encode(ViewBag.EId)) 

       }, 
       success: function (data) { 

        $("p.p12").append('<div style="background-color:#FAFAFA;">Recently Added... <br /><a href="@Url.Action("Details", "Employee", new { id = "__id__" })'.replace('__id__', data.OwnerID) + '">' + data.OwnerName + '</a>'+ data.cmtDateTime +'<button type="button" id=' + data.Id + ' class="deleteComment">Delete</button></span><br />' + data.msg + '</div>') 


       } 

      }); 
     }); 
    }); 
</script> 




</head> 
<body> 

@{ 



    <div class="ParentBlock"> 


    @foreach (var item in Model) 
    { 
     <div class="OwnerClass" id="OwnerName"> 


     <span class="EmpName"> @Html.ActionLink(item.Owner.FullName, "Details", "EMployee", new { id = item.OwnerId }, new { @style = "color:#1A6690;" })</span> 

      @Html.DisplayFor(ModelItem => item.CommentDateTime) 

      <span class="EmpName"><button type="button" id = "@item.Id" class="deleteComment">Delete</button></span> 



     <p class="CommentP"> 
      @Html.DisplayFor(ModelItem => item.CommentText) 
     </p> 


     </div> 


    } 


    <p class="p12"> 

     </p> 



</div> 

     <p id="ClassPara" class="ShowComments" onclick="chkToggle()">Show All Comments</p> 

} 



    @Html.TextArea("Comment", "", 5, 80, "asdsd") 


    <input type="button" value="Add Comment" id="AddCommentButton"/>       
    <input type="button" value="Clear" onclick="clearText()"/>      

    <br /> 







</body> 
</html> 





<script src="../../Scripts/jquery.js" type="text/javascript"></script> 
<script type="text/javascript"> 


// Working code - Deletes the comment from DB and removes hide the current Div 
//////////////////////////////////////////////////////// 

    $(document).ready(function() { 
     $(".deleteComment").click(function() 
     { 
      alert("Delete process start here..."); 

     }); 
    }); 



</script> 
+0

'$( 「身體」)上。( 「點擊」, 「.deleteComment」,函數(){ 警報 ( 「刪除過程從這裏開始......」);' });我已經嘗試過但不工作... – user1668543

回答

1

使用JQuery [on][1]而不是click;前者會在文檔被修改時動態地處理事件,而後者會在您調用它時連接事件一次。

$("body").on("click", ".deleteComment", function() 
    { 
     alert("Delete process start here..."); 
    });