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;
},
/**