0

こんにちは、グリッドビューに結合された値としてパラメーター値を使用して JavaScript 関数を呼び出すのに常に問題があります。SO Threadに従いますが、thisパラメーターの受け渡しには使用できません。以下は、私の aspx ページで使用したステートメントです。

onblur="return ValidateText(this,'<%# Eval("vehicleId") %>')"

しかし、これにより解析エラーが発生The server tag is not well formed.します。設計のみでこの関数を呼び出すにはどうすればよいですか (コード ビハインドからではありません)。

4

2 に答える 2

6

これは機能しますが、囲んでいる引用符を削除したため (anti-XHtml)、HACK のようです。

 onblur=<%# String.Format("return ValidateText(this, '{0}')", Eval("VehicleID")) %>

問題は、文字列の一部として" "" "orを持つことです。' '' '

これは、RowDataBound や ItemDataBound などのコード ビハインドで行う方が適切です (マークアップの方が簡単だといいのですが)。

 control.Attributes["onblur"] = String.Format("return ValidateText(this, '{0}')", rowValue);
于 2013-01-08T08:50:38.667 に答える
1

問題は最も外側の二重引用符だと思います。"それを単一引用符に変更して'ください。

onblur='return ValidateText(this,'<%# Eval("vehicleId") %>')'

アップデート

string.Format()あなたが参照しているSOの質問に記載されているように使用してみてください..

onblur='<%# System.String.Format("return ValidateText(this, \"{0}\")", Eval("vehicleId")) %>'
于 2013-01-08T08:46:01.873 に答える