Doge log

Abby CTO 雑賀 力王のオフィシャルサイトです

Kumu.AjaxでHtmlにアクセスする方法

うーん、やはりテンプレートエンジン使いたいって話が出ますなあ。
なのでちょっとだけ。
簡単にアクセスできるようにかなり隠蔽してるのですができますよという話。
サンプル

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<script language="JavaScript" type="text/javascript" src="../js/kumu/kumu.js"></script>
<script language="JavaScript" type="text/javascript" src="../js/kumu/ajax.js"></script>
<script>
function  test(url, callback){
    var self = Kumu.Ajax;
    var ajax = self.getS2AjaxComponent();
    ajax.url = url;
    ajax.params ={};
  ajax.doAction = callback;
    ajax.responseType = self.RESPONSE_TYPE_HTML;
    self.executeAjax(ajax);
}
function callback(html){
  $i('test').innerHTML = html;
}

</script>

<title>Sample</title>
</head>
<body>
<input type="button" name="" value="start" onclick="test('test.html', callback);">
<div id="test">
</div>
</body>
</html>

指定先のURLは任意なので好きなものでレンダリング可能ですよ。
単純にいれるとhtmlの内容(htmlタグやbodyタグ)がそのまま入ってしまうので注意ですかなあ。
あと、当たり前ですがJSFで使う場合、JSF側はajaxjavascript)で追加された要素を認識できないので注意です。

うくく。