HTML内のプルダウンメニューのリンク先を外部ファイルに記述をしたいのですが方法はありますか?教えてください。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/10/28 13:20:43
  • 終了:--

回答(2件)

id:izayoimizuki No.1

izayoimizuki回答回数302ベストアンサー獲得回数02005/10/28 14:28:29

ポイント30pt

[test.xml]

<?xml version=”1.0” encoding=”UTF-8”?>

<?xml-stylesheet type=”text/xsl” href=”test.xsl”?>

<meta>

<select>

<name>name</name>

<option><value>test1</value><text>test1</text></option>

<option><value>test2</value><text>test2</text></option></select>

</meta>

[EOF]


[test.xsl]

<?xml version=”1.0” encoding=”UTF-8”?>

<xsl:stylesheet version=”1.0”

xmlns:xsl=”http://www.w3.org/1999/XSL/Transform

xmlns=”http://www.w3.org/1999/xhtml”>

<xsl:output

method=”html”

media-type=”text/html”

doctype-system=”http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd

doctype-public=”-//W3C//DTD XHTML 1.1//EN”

indent=”yes”/>

<xsl:template match=”/”>

<html>

<head>

<title>test</title>

</head>

<body>

<xsl:apply-templates select=”meta/select”/>

</body>

</html>

</xsl:template>


<xsl:template match=”select”>

<select>

<xsl:attribute name=”name”>

<xsl:value-of select=”name”/>

</xsl:attribute>

<xsl:apply-templates select=”option”/>

</select>

</xsl:template>


<xsl:template match=”option”>

<option>

<xsl:attribute name=”value”>

<xsl:value-of select=”value”/>

</xsl:attribute>

<xsl:value-of select=”text”/>

</option>

</xsl:template>


</xsl:stylesheet>

[EOF]

基本的なXSLTベースのメタ化。

メタ化というよりもテンプレートに近い。

MSIEやFirefox,MozillaをはじめとするGecko 1.0以降のブラウザではクライアントサイド変換が可能です。

それ以外のクライアントに対してはサーバーサイドの変換をする事で対応します。


参考URLの上2つはテストケースとテストケース関連ファイルのZIPアーカイブです。(MSIE6.0,Mozilla1.0,Firefox等で動作)


3番目はサーバーサイドでXSLT変換を行うためのApacheモジュールのページ。

id:izumi6878

ありがとうございました。

2005/10/28 17:25:38
id:andi No.2

andi回答回数448ベストアンサー獲得回数02005/10/28 17:09:25

ポイント30pt

「プルダウンメニューのリンク先」とは多分こういうことだろうと予想して簡単なサンプルを作りました。


[sample.html]

<script src=”sample.js”></script>

<select onchange=”location.href=url[this.selectedIndex]”>

<option>Yahoo!</option>

<option>Google</option>

<option>goo</option>

</select>


[sample.js]

var url = new Array(

http://www.yahoo.co.jp/’,

http://www.google.com/’,

http://www.goo.ne.jp/

);

id:izumi6878

ありがとうございました。

2005/10/28 18:39:48

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません