それは逃げていません。これは、JavaScript変数であるかのようにスクリプトレット変数を出力するだけです。
その上、あなたの例は紛らわしく、それらは互いに一致せず、Javascriptコードは構文的に無効です。少なくとも、JavaScriptの文字列変数は引用符で囲まれていることがわかります。あなたがで終わりたいなら
selectAllCheckBoxes('Hello', this);
ここで、スクリプトレットローカル変数Hello
の値として取得する必要があります(これは予約済みの変数名です。自分で使用しないでください)。次に、次のことを行う必要があります。name
param
selectAllCheckBoxes('<%= name %>', this);
同じように、あなたが
onclick="selectAll('Hello')"
あなたがする必要があります
onclick="selectAll('<%= name %>')"
とはいえ、10年以上前から推奨されていない昔ながらのスクリプトレットの使用をやめることを強くお勧めします。JSPプログラマーは、JSPコードをよりクリーンで堅牢にし、保守しやすくするためにのみ、taglibsとELを使用することをお勧めしました。JSTLなどのtaglibsを使用してJSPページのフローを制御したり、ELを使用して「バックエンド」データにアクセスしたりできます。あなたの例は次のように置き換えることができます:
<c:set var="name" value="Hello" />
...
selectAllCheckBoxes('${name}', this);