点击标签调用javascript

时间:2012-11-26 22:42:20

标签: javascript asp.net

我有一个gridview,在gridview中,我有一个标签,当用户点击该标签时,我调用了一个javascript函数。我将该标签中的几个值传递给javascript函数。如果值中有apsotrphe。它会生成错误,并且不会调用javascript函数。以下是我的代码。

<asp:TemplateField> 
    <ItemTemplate> 
        <label style="text-decoration: underline" onclick="javascript:GetSelectedRow('<%# Eval("ID") %>','<%# Eval("systempath") %>','','',1);"><%#Eval("ID") %></label> 
    </ItemTemplate> 
</asp:TemplateField>

并且javascript函数是

function GetSelectedRow(id, systempath, x, x, rowIndex) { 

    debugger; 
    var label = document.getElementById('<%=lbl_ID.ClientID %>'); 

    label.innerText = mclid + "|" + systempath; 
    document.getElementById('<%=hdnlblID.ClientID %>').value = id + "|" + systempath; 

    return false; 

}

2 个答案:

答案 0 :(得分:1)

试试这个

<label style="text-decoration: underline" onclick="javascript:GetSelectedRow('<%# Eval("ID") %>','<%# Eval("systempath").ToString().Replace("'", @"\'"); %>','','',1);"><%#Eval("ID") %></label>

答案 1 :(得分:0)

由于您在ID周围使用单引号,因此您需要转义并撇号:

var label = document.getElementById('<%=lbl_ID.ClientID.Replace("'", "\'") %>');