嗨,在调用 JavaScript 函数时总是遇到麻烦,参数值是绑定到 gridview 的值。我遵循SO Thread但不能用于传递this
参数。下面是我在我的 aspx 页面中使用的语句。
onblur="return ValidateText(this,'<%# Eval("vehicleId") %>')"
但这给了我解析错误The server tag is not well formed.
我应该如何在设计中调用这个函数(而不是从后面的代码)。
这可行,但似乎是一个 HACK,因为我删除了封闭引号(反 XHtml)
onblur=<%# String.Format("return ValidateText(this, '{0}')", Eval("VehicleID")) %>
问题是具有" "" "
或' '' '
作为字符串的一部分。
这样做更好(我希望在标记中更容易),在代码隐藏中,例如 RowDataBound 或 ItemDataBound
control.Attributes["onblur"] = String.Format("return ValidateText(this, '{0}')", rowValue);
我认为问题是最外层的双引号"
,将其更改为单引号'
。
onblur='return ValidateText(this,'<%# Eval("vehicleId") %>')'
更新
尝试string.Format()
按照您所指的 SO 问题中所述使用..
onblur='<%# System.String.Format("return ValidateText(this, \"{0}\")", Eval("vehicleId")) %>'