gpt4 book ai didi

javascript - 使用 XPage 中的 ClientSide JS 将值传递到新窗口

转载 作者:行者123 更新时间:2023-11-27 22:58:37 25 4
gpt4 key购买 nike

我想使用客户端 JavaScript 将 4 个字段的值传递到新 XPage

在下面找到我迄今为止尝试过的内容,我无法将值放入新 XPages 的字段中:(

//客户端JS向新窗口传值

var cFld = document.getElementById("#{id:fieldNameID}").innerHTML ;
myUrl = "http://serveradres/applicationame.nsf/xspFrmTest.xsp?action=newDocument";
var zWindow = window.open(myUrl, '_blank');
var zDoc = zWindow.document;
zDoc.getElementById("#{id:fieldNameID2}").value = "TEST VALUE";

更新1:我想打开的新页面位于另一个应用程序中。所以我不能携带任何类型范围的任何值(应用程序、 session 等......)思考下面的示例。从xspfrmtest.xsp到xspfrmtest2.xsp

  1. Application1.nsf -> xspfrmtest.xsp
  2. Application2.nsf -> xspfrmtest2.xsp

最佳答案

这是在客户端不同 Domino 数据库的 XPage 之间传输(大)字段值的示例:

带有 XPage One.xsp 的数据库 One.nsf:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view
xmlns:xp="http://www.ibm.com/xsp/core">
<xp:inputText
id="fieldOne"></xp:inputText>
<xp:button
value="Open Two.xsp in Two.nsf"
id="button1">
<xp:eventHandler
event="onclick"
submit="false">
<xp:this.script><![CDATA[
window.open("http://server1/Two.nsf/Two.xsp", '_blank');
]]></xp:this.script>
</xp:eventHandler>
</xp:button>
</xp:view>

带有 XPage Two.xsp 的数据库 Two.nsf:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:eventHandler
event="onClientLoad"
submit="false">
<xp:this.script><![CDATA[
var fieldOne = window.opener.document.querySelector('[id$=":fieldOne"]');
if (fieldOne) {
window.document.getElementById("#{id:fieldTwo}").value = fieldOne.value;
}
]]></xp:this.script>
</xp:eventHandler>
<xp:inputText
id="fieldTwo"></xp:inputText>
</xp:view>

第二个 XPage 使用 window.opener onClientLoad 获取第一个 XPage 窗口的句柄,然后从那里读取字段值。

关于javascript - 使用 XPage 中的 ClientSide JS 将值传递到新窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37345242/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com