在js函数调用中嵌入一个select值
XSL, embed a value-of select within a js function call
我有以下XSL代码(该格式为HTML创建了一个表)。表中的最后一列有一个按钮,该按钮有一个与之关联的onclick事件。
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes" version="4.0"/>
<xsl:template match="/">
<table border="1" id="table1" align="center">
<tr><th>Item Number</th>
<th>Item Name</th>
<th>Description</th>
<th>Price</th>
<th>Quantity</th>
<th>Add</th></tr>
<xsl:for-each select="/Items/Item">
<tr><td><xsl:value-of select="ItemID"/></td>
<td><xsl:value-of select="ItemName"/></td>
<td><xsl:value-of select="ItemDesc"/></td>
<td><xsl:value-of select="ItemPrice"/></td>
<td><xsl:value-of select="ItemQty"/></td>
<td><button onclick="addtoCart(15001)">Add to Cart</button></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
我要做的是替换数字15001,与ItemID…所以代码可能是这样的-但我不确定它应该如何构造。
<td><button onclick="addtoCart(<xsl:value-of select="ItemID">)">Add to Cart</button></td>
哦…这里是javascript代码,它将调用…
function addtoCart(items)
{
alert(items);
}
当前(传递值'15001')代码按预期工作。我知道我可以实现我想做的纯粹在Javascript(通过迭代表,看看哪个按钮被按下),但我的想法传递ItemID内的'addtoCart'函数似乎会干净得多…,好优雅。
你可以在这里使用属性值模板。
试试这个:
<button onclick="addtoCart({ItemID})">Add to Cart</button>
属性中的花括号表示要计算的表达式,而不是按字面意思输出。
注意:您也可以使用xsl:attribute
来创建属性,但正如您所看到的,属性值模板要简单得多
<button>
<xsl:attribute name="onclick">
<xsl:value-of select="concat('addtoCart(', ItemID, ')')" />
</xsl:attribute>
Add to Cart
</button>
相关文章:
- 在php中请求一个select选项
- 更改下一个select元素的类名
- 在js函数调用中嵌入一个select值
- 如何使用angularjs来更改另一个select标记的值
- 你能用javascript设置一个select元素的defaultSelected值吗?
- 根据AngularJS中另一个select元素的值设置选择选项
- 需要一个select标签来跨文档运行javascript
- 使用javascript使用另一个SELECT多个值更新SELECT多个列表(使用erichynds multisele
- 至少选择了一个select-option的表单验证
- 从javascript while循环中创建一个select语句
- 如何使用angular数据绑定将一个复选框绑定到一个select disabled属性
- 如何将两个范围值相加,然后乘以一个select标记
- 如何将值从一个Select更改为另一个Select
- 可以'当第一个select的值改变时,让jquery设置select输入的值
- 在AngularJS中如何根据另一个Select的选择索引来改变一个Select标签的内容
- 如何使用javascript从一个select元素运行多个函数
- 在不使用Select属性的情况下选择一个Select选项(做一个假的鼠标点击)
- 当选择不同的选择选项时,更改另一个SELECT标记的值
- 获取一个select's值,并在angularJs中更改另一个select后将其更新为一个变量
- 动态创建一个select,然后更改ajax调用以附加html