我的表单如下所示
<form method="get" action="change" target="frame">
<select name="fill" >
<option>red</option>
<option>green</option>
<option>yellow</option>
<option>pink</option>
</select>
<input type="submit" value="darstellen"/>
</form>
<iframe name="frame">
</iframe>
我希望表单将颜色发送到另一个包含矩形的XSL文件。 到目前为止,将颜色传递到其他XSL文件都可以,但是现在我想动态更改矩形的填充颜色,但是使用传递的参数将无法工作。
<map:match pattern="change">
<map:generate src="square.svg"/>
<map:transform src="recchange.xsl">
<map:parameter name="use-request-parameters" value="true"/>
</map:transform>
<map:serialize type="html"/>
这是我的站点地图
<xsl:param name="fill"/>
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<body>
<h2><xsl:value-of select="$fill"/></h2>
<h1>testtest</h1>
<svg>
<rect width="300" height="100" style="fill:$fill;stroke-width:3;stroke:red">
</rect>
</svg>
这是我到目前为止所尝试的。有人有建议吗?
答案 0 :(得分:2)
您可以在此处使用Attribute Value Templates来评估$fill
变量并将其值直接输出到属性字符串中
<rect width="300" height="100" style="fill:{$fill};stroke-width:3;stroke:red">
因此,花括号在此处代表属性值模板。