フォームに入力された文字をSVG側に表示する


動作ブラウザ 【 IE:4.0  NN:3.0
Internet Explorer Netscape Navigator DreamPassport iCab
3.0x 4.0x 4.5 5.0x 5.5 2.0x 3.0x 4.0x 4.x 6.0 2 3 2.x
Windows × - × × - × -
Macintosh × × × × - × × - - ×
UNIX - - - - - × × × × × - - -
Dreamcast - - - - - - - - - - × × -

ポイント txt = document.myFORM.myTEXT.value; svgObj = document.theSVG.getSVGDocument(); svgObj.getElementById("myText").getFirstChild().setData(txt);
説  明 SVG内で内容を変更する文字のエレメントにidで名前を付けます。付けた名前はgetElementById("名前")で指定します。このエレメント内のノードのデータをsetData()で書き換えます。フォーム内のデータを読み込みsetDate()でSVGにフォームのテキストを書き出します。
サンプル <html> <head> <title>フォームに入力された文字をSVG側に表示する</title> <script language="JavaScript"><!-- function setSVGText() { txt = document.myFORM.myTEXT.value; svgObj = document.theSVG.getSVGDocument(); svgObj.getElementById("myText").getFirstChild().setData(txt); } // --></script> </head> <body> <embed src="test.svg" width="320" height="100" name="theSVG"><br> <form name="myFORM"> <input type="text" size="40" name="myTEXT"><br> <input type="button" value="書き込む" onClick="setSVGText()"> </form> </body> </html>
補足説明 ここで使用したSVGは以下の通りです。 <?xml version="1.0"?> <svg> <text id="myText" x="10" y="20">Sample Text</text> </svg>

■サンプルスクリプトを実行する >>実行
■各ブラウザでの動作結果を見る >>View!

写真素材 PIXTA