在ASPX中,我在单击按钮时调用了JS函数,从后面的代码中传入变量,如下所示:
... onclick="SelectEmpl('<%=employer.Name%>', '<%=employer.Surname%>', '<%=employer.Company%>')"
问题在于,传递给SelectEmpl函数的所有参数都是字符串,并且可以包含撇号字符。如果发生这种情况,JS撇号会过早配对,并且评估会失败。
我知道我需要以某种方式转义字符串中的撇号,但是我不确定何时从CB传递它们。
谢谢
最佳答案
创建一个函数来转义撇号,然后在每个引号周围进行调用。就像是:
Shared Function RemoveQuotes(ByVal input As String) As String
Return Replace(input, "'", "\'")
End Function
然后:
... onclick="SelectEmpl('<%=RemoveQuotes(employer.Name)%>', '<%=RemoveQuotes(employer.Surname)%>', '<%=RemoveQuotes(employer.Company)%>')"