diff --git a/plugin.xml b/plugin.xml index 3fae992..544916c 100644 --- a/plugin.xml +++ b/plugin.xml @@ -2,12 +2,13 @@ com.fr.solution.plugin.form.widget.rh.iframe yes - 6.3 + 6.4 8.0 2016-06-30 solution [2017-06-20]修复模板类型的网页框参数为中文时候的问题。
[2017-06-14]模板类型的网页框链接支持数组参数。
[2017-06-13]修复模板名字不能为中文的问题。
diff --git a/src/com/fr/plugin/form/widget/core/TemplateSource.java b/src/com/fr/plugin/form/widget/core/TemplateSource.java index 7f5bd18..94d35c6 100644 --- a/src/com/fr/plugin/form/widget/core/TemplateSource.java +++ b/src/com/fr/plugin/form/widget/core/TemplateSource.java @@ -110,7 +110,7 @@ public class TemplateSource extends RHIframeSource { @Override public String toString() { - return Inter.getLocText("Plugin_RH_Iframe_Template_Path"); + return path; } @Override diff --git a/src/com/fr/plugin/form/widget/core/URLSource.java b/src/com/fr/plugin/form/widget/core/URLSource.java index 6a26465..7bd86b0 100644 --- a/src/com/fr/plugin/form/widget/core/URLSource.java +++ b/src/com/fr/plugin/form/widget/core/URLSource.java @@ -114,7 +114,7 @@ public class URLSource extends RHIframeSource { @Override public String toString() { - return Inter.getLocText("Plugin_RH_Iframe_Url"); + return url; } @Override diff --git a/src/com/fr/plugin/form/widget/ui/XRHIframe.java b/src/com/fr/plugin/form/widget/ui/XRHIframe.java index 72bdeee..c3c8f3c 100644 --- a/src/com/fr/plugin/form/widget/ui/XRHIframe.java +++ b/src/com/fr/plugin/form/widget/ui/XRHIframe.java @@ -8,9 +8,12 @@ import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.widget.editors.WidgetValueEditor; import com.fr.general.Inter; import com.fr.plugin.form.widget.core.RHIframe; +import com.fr.plugin.form.widget.core.RHIframeAttr; +import com.fr.plugin.form.widget.core.RHIframeSource; import com.fr.plugin.form.widget.ui.editor.RHIframeModelEditor; import com.fr.plugin.form.widget.ui.render.RHIframeModelRenderer; import com.fr.stable.ArrayUtils; +import com.fr.stable.StringUtils; import javax.swing.*; import java.awt.*; @@ -44,7 +47,7 @@ public class XRHIframe extends XWidgetCreator { protected JComponent initEditor() { if (editor == null) { editor = FRGUIPaneFactory.createBorderLayout_S_Pane(); - UITextField address = new UITextField(); + UITextField address = new UITextField(showDescriptionText()); editor.add(address, BorderLayout.NORTH); JPanel contentPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); contentPane.setBackground(Color.white); @@ -53,6 +56,20 @@ public class XRHIframe extends XWidgetCreator { return editor; } + private String showDescriptionText() { + RHIframe iframe = (RHIframe) toData(); + if (iframe != null) { + RHIframeAttr attr = iframe.getAttr(); + if (attr != null) { + RHIframeSource source = iframe.getAttr().getSource(); + if (source != null) { + return source.toString(); + } + } + } + return StringUtils.EMPTY; + } + @Override public Dimension initEditorSize() { return new Dimension(160, 80); diff --git a/src/com/fr/plugin/form/widget/web/widget.rh.iframe.js b/src/com/fr/plugin/form/widget/web/widget.rh.iframe.js index 5497fb3..e0759d9 100644 --- a/src/com/fr/plugin/form/widget/web/widget.rh.iframe.js +++ b/src/com/fr/plugin/form/widget/web/widget.rh.iframe.js @@ -99,16 +99,11 @@ // richer:以get的方式获取ifram的参数 _loadIframeByGet: function () { - var src = this.options.src, self = this; + var src = encodeURI(this.options.src), self = this; // 获取参数组 if (this.options.data) { - //bug:63869这个遍历没有必要下面都有ifelse了 - //for (var i = 0, len = this.options.data.getLength(); i < len; i++) { - // var params = this.options.data.getRecord(i).getContent(); - // src = src.appendQuery(params); - //} - var waitForInitComplete = []; + var backupQuery = {}; for (var i = 0, len = this.options.data.getLength(); i < len; i++) { var params = this.options.data.getRecord(i).getContent(); @@ -122,9 +117,10 @@ waitForInitComplete.push(params.widgetName); } } else { - src = self._appendQuery(src, params); + $.extend(backupQuery, params); } } + src = self._appendQuery(src, backupQuery); if (waitForInitComplete.length > 1) { var form = this.options.form; @@ -149,7 +145,7 @@ * @return {String} 添加了给定参数的url */ _appendQuery: function (src, paras) { - if (!paras) { + if (FR.isEmptyObj(paras)) { return src; } // 没有问号说明还没有参数 @@ -161,7 +157,6 @@ } else { src += "&"; } - debugger; // 模板 if (this.options.sourceType == 'tpl') { $.each(paras, function (pName, pValue) { @@ -179,7 +174,7 @@ } }); } - return encodeURI(src); + return src; }, /**