javascript
  • jquery
  • .net
  • 2013-12-11 49 views 1 likes 
    1

    你好,我已經綁定此鏈接按鈕,我的中繼器內類似這樣的如何在JavaScript中的eval函數中添加單引號?

    <asp:LinkButton ID="btnAddtocart" Text="Add To Cart" 
    CssClass="buttonlight" 
    ToolTip="Add To Cart" runat="server" 
    OnClientClick='<%# "return InsertProduct("+Email.Encryptdes(Eval("product_id").ToString()) +",1)" %>' 
    ></asp:LinkButton> 
    

    和 JavaScript函數

    function InsertProduct(product_id,qty) 
    { 
    
        } 
    

    Email.Encryptdes的輸出(EVAL( 「PRODUCT_ID」)。的ToString())+ 。」,1)是這個

    返回InsertProduct(Fc81hnZ20cpotk1HoHRPUg == HTML,1);

    所以當我點擊鏈接它會顯示錯誤控制檯附近不正確的語法。(點) 所以我想這是

    回報InsertProduct( 'Fc81hnZ20cpotk1HoHRPUg == HTML', 1);

    我怎樣才能做到這一點,我已經嘗試了很多,但strangly它單引號不會顯示在瀏覽器

    [Updated] 
    

    現在我的瀏覽器純HTML這樣表示

    <a onclick="return InsertProduct(&quot;&lt;%# Email.Encryptdes(Eval(&quot;product_id&quot;).ToString()) %&gt;&quot; ,1);" id="ctl00_contentplaceHolder2_control2_rptrnew_products_ctl00_btnAddtocart" title="Add To Cart" class="buttonlight" href="javascript:__doPostBack('ctl00$contentplaceHolder2$control2$rptrnew_products$ctl00$btnAddtocart','')">Add To Cart</a> 
    

    回答

    1

    做這在後面的代碼將使其非常簡單

    btnAddtocart.OnClientClick = "return InsertProduct('"+Email.Encryptdes(Eval("product_id").ToString()) +"',1)" 
    

    還有一個解決方案可以嘗試,您可以調用其他一些javacript函數。

    HTML

    OnClientClick='return callToFunction()' 
    

    的Javascript

    function callToFunction() 
    { 
        return InsertProduct("<%= Email.Encryptdes(Eval("product_id").ToString()) %>",1) 
    } 
    
    +0

    +1感謝您的回覆它的工作原理,但我可以做的源文件?我不希望它在代碼後面 –

    +0

    檢查我更新的答案。 – Adil

    +0

    <%= Email.Encryptdes是一個服務器端函數,我不能從javascript中調用它 –

    相關問題