【问题标题】:how to add value inside JavaScript function?如何在 JavaScript 函数中添加值?
【发布时间】:2018-02-05 00:24:31
【问题描述】:
error: linked button The server tag is not well formed.

我正在使用 VB asp.net 和 JavaScript

我在中继器中有一个链接按钮。当用户单击删除按钮时,我想运行 onclick() 函数并传入一个 eval() 值。

之后我想在 javascript 函数中获取值。

注意,创建隐藏字段是行不通的,因为它在中继器内部,我无法在 JavaScript 函数中获取值。

function RemoveItemJS(obj) {
    alert("test" + obj);
}

vb asp.net 中继器代码:

<asp:Repeater ID="BagRepeater" runat="server">
    <ItemTemplate>
        <asp:HyperLink ID="ProductNameHL" NavigateUrl='<%# Eval("Product_ID", "../Shop/ShopDetail.aspx?Product_ID={0}") %>'  runat="server">
            <h4 class="Text-Spacing"><%# Eval("Name")%></h4>
        </asp:HyperLink>
        <h5><strong>$<%# Eval("Price") %></strong></h5>
        <h5>Color: <%# Eval("Color") %></strong></h5>
        <h5>Size: <%# Eval("Size") %></strong></h5>
        <h5>QTY: <%# Eval("QTY") %></strong></h5>                                   
        <asp:LinkButton ID="RemoveItemLB" OnClientClick="RemoveItemJS('"+<%# Eval("Product_ID") %>+"');" runat="server"><span class="glyphicon glyphicon-remove"></span></asp:LinkButton>
    </ItemTemplate>
</asp:Repeater>

【问题讨论】:

标签: javascript asp.net


【解决方案1】:

尝试使用“点击”

<asp:LinkButton ID="RemoveItemLB" onclick='<%# "RemoveItemJS(" +Eval("Product_ID") + " );" %>' runat="server"><span class="glyphicon glyphicon-remove"></span></asp:LinkButton>

【讨论】:

    【解决方案2】:

    遵循以下方法。这个我试过了,效果很好。

    1. 您需要对onclientclick 值内的引号进行转义 属性如下面的代码。
    2. 请注意,双引号用反斜杠转义,即\ 字符以及整个 JavaScript 代码都是从 服务器端代码。
    3. 在 VB.Net 中使用 &amp; 作为字符串连接运算符,而不是在标记中的服务器端表达式中使用 +

      OnClientClick='<%# "RemoveItemJS(\"" &  Eval("Product_ID") & "\")" %>'
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-21
      • 2019-12-25
      • 2023-01-14
      • 1970-01-01
      • 1970-01-01
      • 2023-03-18
      • 1970-01-01
      • 2022-08-03
      相关资源
      最近更新 更多