底线是我需要一个(dojo)确认是-否对话框,我需要在 xsl 代码中使用它。
这个想法是我使用 xslt 转换生成两个按钮,第一个是编辑,第二个是删除。后者应该打开确认对话框。这是我用来创建这些按钮的 xsl 代码。
<xsl:template match="report:submit-button">
<script type="text/javascript">require(["dojo/parser", "dijit/form/Button"]);</script>
<button type="submit" data-dojo-type="dijit/form/Button">
<xsl:if test="@name">
<xsl:attribute name="name">
<xsl:value-of select="@name"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="@value">
<xsl:attribute name="value">
<xsl:value-of select="@value"/>
</xsl:attribute>
</xsl:if>
</button>
</xsl:template>
我对dojo真的很陌生,但我找到了一些教程,所以我有下面的代码。
<div>
<div class="dijitDialogPaneContentArea">
Please confirm if you would like to delete the selected ${message}. <p/>
This operation cannot be undone.
</div>
<div class="dijitDialogPaneActionBar">
<button data-dojo-type="dijit/form/Button" type="submit" >OK</button>
<button data-dojo-type="dijit/form/Button" type="button" >Cancel</button>
</div>
</div>
var myWidget = new MyWidget({
message: "Member"
});
var myDialog4 = new Dialog({
title: "My Dialog 4",
content: myWidget
});
myDialog4.show();
我的问题是如何将 dojo 合并到 xsl 代码中?如果它是一个简单而简短的 javascipt 函数,例如 alert() 或 Confirm,那么我将添加另一个值为“onclick”的属性,如下所示:
<xsl:if test="@verifyPopUp">
<xsl:attribute name="onclick">
var c = confirm("Please confirm deleting this item");
</xsl:attribute>
</xsl:if>
但是上面这个冗长且有点麻烦的dojo-code似乎并不完美。任何建议都适用。