在底层表单中制作 Liferay 7 弹出填充值
Make Liferay 7 popup fill value in underlying form
我有一个 Liferay portlet,它有一个表单(正常 <form>
但我可以将其更改为 <aui:form>
)。
此表单有一个只读文本输入字段(比方说 fruit
)和一个 link 打开一个让用户选择水果的弹出窗口。
如何从弹出窗口修改基础表单中的 fruit
字段值?
您可以使用 liferay alloy UI 同样。
本教程可能会有所帮助
https://alloyui.com/examples/color-picker/popover
我认为一个好的方法是使用事件。
您需要在表单页面中监听一个事件并从弹出窗口触发该事件。
表单页面:
Liferay.on('eventName', function(e){
//e.selectedFruit
});
在弹出窗口中:
Liferay.fire('eventName', {selectedFruit: 'orange'});
当然要慎重选择事件名称,避免冲突
例如,您可以在其前面添加 portlet 名称空间并将该事件名称作为参数发送到弹出窗口。
我有一个 Liferay portlet,它有一个表单(正常 <form>
但我可以将其更改为 <aui:form>
)。
此表单有一个只读文本输入字段(比方说 fruit
)和一个 link 打开一个让用户选择水果的弹出窗口。
如何从弹出窗口修改基础表单中的 fruit
字段值?
您可以使用 liferay alloy UI 同样。 本教程可能会有所帮助 https://alloyui.com/examples/color-picker/popover
我认为一个好的方法是使用事件。
您需要在表单页面中监听一个事件并从弹出窗口触发该事件。
表单页面:
Liferay.on('eventName', function(e){
//e.selectedFruit
});
在弹出窗口中:
Liferay.fire('eventName', {selectedFruit: 'orange'});
当然要慎重选择事件名称,避免冲突
例如,您可以在其前面添加 portlet 名称空间并将该事件名称作为参数发送到弹出窗口。