2016-06-15 5 views
0

Asp.Net DataList 내부의 버튼 click 이벤트에서 JavaScript 경고 또는 부트 스트랩 모달 메시지를 표시하는 방법. 여기 내 DataList에 있습니다 :Asp.net DataList 내부의 버튼에서 JavaScript 경고 발생

 <asp:DataList ID="dListProduct" runat="server" RepeatColumns="4" OnItemCommand="dListProduct_ItemCommand" AutoPostBack="true"> 
    <ItemTemplate> 
     <div> 
      <table class="table-responsive" border="1"> 
       <tr> 
        <td> 
          <asp:Label runat="server" Text="Id" ></asp:Label><asp:Label ID="lblPId" runat="server" Text='<%# Eval("Product_Id")%>' Visible="true"></asp:Label> 
        </td> 
       </tr> 
       <tr> 
        <td> 
         <asp:Button id="btnAddtoCart" runat="server" Text="Add to Cart" CommandName="save" CommandArgument="save" OnClick="btnAddtoCart_Click"/> 
        </td> 
       </tr> 
      </table> 
     </div> 
    </ItemTemplate> 
</asp:DataList> 

여기 뒤에 코드 :

protected void dListProduct_ItemCommand(object source, DataListCommandEventArgs e) 
     { 
      if (e.CommandName == "save") 
      { 
       Label Id = (Label)e.Item.FindControl("lblPId"); 
       Label Name = (Label)e.Item.FindControl("lblProductName"); 
       Label Stock = (Label)e.Item.FindControl("lblStock"); 
       Label Price = (Label)e.Item.FindControl("lblPrice"); 
       if (Stock.Text.Equals("0")) 
        return; 

       bool check = false; 

       foreach (Cart c in GenericCart.cart) 
       { 
        if (c.ProductId == Convert.ToInt64(Id.Text)) 
        { 
         c.Qty += 1; 
         c.Total = (c.Price * c.Qty); 
         check = true; 
         Response.Write("<script>alert('Hello');</script>"); 
         break; 
        } 
       } 
       if (!check) 
       { 
        Cart c = new Cart(); 
        c.ProductId = Convert.ToInt64(Id.Text); 
        c.ProductName = Name.Text; 
        c.Qty = 1; 
        c.Price = (float)Convert.ToDecimal(Price.Text); 
        c.Total = (float)Convert.ToDecimal(Price.Text); 
        GenericCart.cart.Add(c); 
        Response.Write("<script>alert('Hello');</script>"); 
       }    
      } 
     } 

하지만이 스크립트 메시지는 결코 표시되지 얻을. 아무도 도와 줄 수 있습니까?

+0

당신은 그 버튼의'OnClientClick'를 사용하여 자바 스크립트에서 메시지를 작성해야합니다. 예 : http://stackoverflow.com/questions/14058116/confirm-postback-onclientclick-button-asp-net – techspider

답변

0

코드 숨김 전에 경고를 발생 시키거나 코드 숨김에 Page.RegisterStartupScript을 사용하여 다시 게시가 완료된 후에 실행할 javascript 함수를 등록하려면 단추에 OnClientClick 특성을 사용할 수 있습니다.

MSDN article on usage of RegisterStartupScript

관련 문제