Index > はじめての prototype.js ... 入力内容に応じてHTMLを書き換える
Fri, January 2, 2009

はじめての prototype.js ... 入力内容に応じてHTMLを書き換える

inputエレメントで入力した内容に応じてHTMLを書き換える

id="target" を埋め込んだ div エレメントの内容を input で入力した内容に 応じてダイナミックに変更します。

ポイント1 innerHTMLを使う

これは prototype.jsの機能ではなくDOM標準の機能ですが、書き換えるターゲットなる divエレメントの内容を innerHTML を使って書き換えます。

$('tareget').innerHTML= inputエレメントに入力された値;

ポイント2 input エレメントの内容変化を観察する

var w = new Form.Element.Observer("input_text", 1, ReplaceText);

ポイント3 id指定した要素の取得

getElementById()を使わないで、簡単な記述でid指定した要素を取得します。

$('target')

サンプルコード

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<script src="http://www.google.com/jsapi"></script>
<script>
google.load("prototype", "1.6.0.3");

google.setOnLoadCallback(function() {

    function ReplaceText()
    {
        var v = w.getValue();
        $('target').innerHTML=v;
    }
    var w = new Form.Element.Observer("input_text", 1, ReplaceText);
});

</script>
</head>
<body>

<div>
<input type="text" id="input_text"></input>
</div>

<div id="target">
</div>

</body>
</html>

サンプルのテスト

replaceText.html

 Twitter
follow me on Twitter
 Categories