未捕获的ReferenceError:XXX未定义具有特定值

时间:2016-05-17 13:12:44

标签: java jquery asp.net eval linkbutton

点击以下链接时出现以下异常:

  

未捕获的ReferenceError:未定义G502

<asp:LinkButton ID="lkSelect" runat="server" Font-Names="Tahoma" Font-Size="8" OnClientClick='<%# "CallParent(" +Eval("l_room_no").ToString() + " );" %>'><%# Eval("Cell_Data") %></asp:LinkButton>

仅限于:

 Eval("l_room_no") = G502

我的脚本功能:

 function CallParent(room) {
          //  window.opener.DrawPaths(room);
            // window.close();
            alert(room);
        }

2 个答案:

答案 0 :(得分:1)

根据当前实现G502被视为变量,因此您收到错误。

OnClientClick="<%#string.Format("CallParent('{0}');",Eval("l_room_no")) %>"

答案 1 :(得分:1)

CallParent的参数应该用引号括起来。但是,由于数据绑定表达式已使用单引号和双引号,因此您可以将转换后的字符代码传递给string.Format

<asp:LinkButton ... OnClientClick='<%# string.Format("CallParent({0}{1}{0});", (char)39, Eval("l_room_no")) %>' Text='<%# Eval("Cell_Data") %>' />

此示例假定您使用C#。相当于(char)39的VB.NET将是chr(39)