我正在使用jQuery Mobile(1.2.0)和XPages(8.5.3),并希望禁用Ajax表单提交,因为这似乎阻止了图像的保存(所有其他文本字段都已成功保存)。 / p>
我可以使用以下内容将data-ajax="false"
添加到表单标记吗?
<xp:this.attrs>
<xp:attr name="data-ajax" value="false"></xp:attr>
</xp:this.attrs>
我尝试在主题中使用Form
(根据adding styleClass)但未添加任何内容,我可以添加styleClass
。
答案 0 :(得分:1)
只需将这些行添加到您的主题:
<control mode="override">
<name>Form</name>
<property>
<name>attrs</name>
<complex type="xp_attr">
<property>
<name>name</name>
<value>data-ajax</value>
</property>
<property>
<name>value</name>
<value>false</value>
</property>
</complex>
</property>
</control>
答案 1 :(得分:1)
另一种替代方法是将XPage中的createForm
属性设置为false
。这不会生成form
代码,并允许您使用xp:form
创建自己的代码。然后,您可以使用xp:this.attrs
添加自定义属性,就像在查询中一样。所以你的代码看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" createForm="true">
<xp:form id="myForm">
<xp:this.attrs>
<xp:attr name="data-ajax" value="false"></xp:attr>
</xp:this.attrs>
<!-- All the other controls go here -->
</xp:form>
</xp:view>
这将生成form
标记,如下所示:
<form id="view:myForm" method="post" action="/myPath/myDatabase.nsf/xFormAttrs.xsp" class="xspForm" enctype="multipart/form-data" data-ajax="false">