画面表示時にJavascriptが動作し『HTMLに記述してあるスクリプトです。』アラートが表示されます。
『ここをクリックするとスクリプトが変更されます。』リンクをクリックするとHTML内の
javascriptが動的に変更されて表示されるアラートの内容が変化します。
≪作成時注意点≫
画面表示時にJavascriptが動作し『HTMLに記述してあるスクリプトです。』アラートが表示されます。
『ここをクリックするとスクリプトが変更されます。』リンクをクリックするとHTML内の
javascriptが動的に変更されて表示されるアラートの内容が変化します。
≪作成時注意点≫
・JavascriptのスクリプトをWEBサーバーで変更するにはname属性を持つSCRIPTタグを作成します。
【例】<script name="scriptItem" language="JavaScript">
<!--
function startScript(){
alert("HTMLに記述してあるスクリプトです。")
}
//-->
</script>
・HTMLファイル内のSCRIPTタグの内に記述されているスクリプトは
pirka動作時の初期値となります。
・Javaクラスのコンストラクタやサブミットボタン等がクリックされたときに動作する
アクションメソッド内でsetValueメソッドを使用しスクリプトを設定します。
・JavascriptはSCRIPTタグ内のコメントとして記述されます。
setValueメソッドで設定するJavascriptもコメント『<!--』、『//-->』を
含めた文字列を使用してください。
【例】String script =
"<!---\n" //
+ "function startScript(){\n" //
+ "alert(\"変更されたスクリプトです。\");\n"
+ "}\n"
+ "//-->\n";
FieldMap field = getFieldMap();
field.setValue("scriptItem", script );
・実行時のブラウザの設定はJavaScriptが有効でなければ正しく動作しません。
ソースファイル
ScriptSample.html サンプル画面のHTMLファイル
<html>
<head>
<title>pirka逆引きサンプル Javascriptソースの動的出力方法</title>
<script name="scriptItem" language="JavaScript">
<!--
function startScript(){
alert("HTMLに記述してあるスクリプトです。")
}
//-->
</script>
</head>
<body onLoad="startScript()">
<center>
<span style="color: #8080ff">pirka逆引きサンプル Javascriptソースの動的出力方法</span><br>
<hr>
<a name="changeScriptButton" href="">ここをクリックするとスクリプトが変更されます。</a>
<hr>
<a name="returnWindow" href="">戻る</a>
</center>
</body>
</html>
package jp.oarts.pirka.sample.instruction.is101800;
import jp.oarts.pirka.core.kernel.FieldMap;
import jp.oarts.pirka.core.win.PirkaWindow;
/**
* pirka逆引きサンプル Javascriptソースの動的出力方法
*/
public class ScriptSample extends PirkaWindow {
private static final String script1 = //
"<!---\n" //
+ "function startScript(){\n" //
+ " alert(\"変更されたスクリプトです。 ";
private static final String script2 = //
"回変更されました\");\n" + "}\n" //
+ "//-->\n";
/** 更新回数 */
private int count = 0;
/**
* スクリプト更新
*/
public void changeScriptButton() {
count++;
FieldMap field = getFieldMap();
field.setValue("scriptItem", script1 + count + script2);
}
/**
* 戻るリンク
*
* @return
*/
public PirkaWindow returnWindow() {
return null;
}
}