1

列の値を画像に置き換える必要がある JQWidgets グリッドを使用していくつかの作業を行っています。これを行うには、セルレンダラーに文字列を返す必要があります。さらに、アイコンをクリックすると、Javascript 関数呼び出しが実行され、いくつかのパラメーターが渡されます。パラメータの 1 つが文字列値で、戻り文字列を設定するのに苦労しています。

私が呼び出している Javascript 関数は、4 つの変数 (3 つの整数と 1 つの文字列) を取ります。これはリターンのコードです:

return "<span style='margin:4px; display:block;'><a href='javascript:;' onclick='unenroll(" + courseID + ", \"courseName\", " + progress + ", " + userID + ")' class='delete-icon' title='<cfoutput>#APPLICATION.LC.getValue("UnassignFrom")#</cfoutput> ' + courseName + '?'><cfoutput>#APPLICATION.LC.getValue("UnassignFrom")#</cfoutput> ' + courseName + '?</a></span>";

courseID、courseName、progress、および userID はすべて Javascript 変数です。courseName は文字列です。

ご覧のとおり、courseName の周りの引用符をスラッシュでエスケープしようとしましたが、うまくいきません。引用符の Unicode または HTML エンティティ バージョンのエンコードも行いません。すべての引用符を切り替えようとしましたが (つまり、single から double に、double から single に)、それでも何もしませんでした。

編集 -これは Firebug から返されたものです: syntax error unenroll(2333, "Exam Automation", 50, )

4

1 に答える 1

1

「UnassignFrom」の近くのエスケープ引用符をいくつか見逃しました。正しいバージョンは次のとおりです。

return "<span style='margin:4px; display:block;'><a href='javascript:;' onclick='unenroll(" + courseID + ", \"courseName\", " + progress + ", " + userID + ")' class='delete-icon' title='<cfoutput>#APPLICATION.LC.getValue(\"UnassignFrom\")#</cfoutput> ' + courseName + '?'><cfoutput>#APPLICATION.LC.getValue(\"UnassignFrom\")#</cfoutput> ' + courseName + '?</a></span>"
于 2012-07-16T15:13:14.263 に答える