Javascript-从未打开的页面访问元素
我的问题有点难以解释。我想做的是,我在某个页面上有一个按钮。当我按下该按钮时,我必须能够访问位于另一页上的表单元素,而不必打开另一页 按下该按钮将从未打开的页面编辑表单中的一些元素,然后发布,所有这些都不会打开任何额外的弹出窗口/选项卡/窗口。表单发布后,按钮将消失 所讨论的表单包含唯一的参数,如果不访问其特定页面,则无法检索这些参数,因此我无法在独立模式下模拟该表单 我的一些猜测是使用一个动态iframe集来显示:none或Ajax,但除此之外,我不确定这是否可行以及如何实现 有人有什么想法吗?抱歉,如果问题不太清楚,我已尽力描述该问题请尝试使用框架集。 下面给出的示例代码有3页 1.第1页是包含两个框架的父文档。 2.1参考第2页 3.2参考第3页 test1.htm test2.htm test3.htm 在test2页面中,可以从test3.htm页面更改global的值。尝试使用frameset。 下面给出的示例代码有3页 1.第1页是包含两个框架的父文档。 2.1参考第2页 3.2参考第3页 test1.htm test2.htm test3.htmJavascript-从未打开的页面访问元素,javascript,post,dynamic,userscripts,Javascript,Post,Dynamic,Userscripts,我的问题有点难以解释。我想做的是,我在某个页面上有一个按钮。当我按下该按钮时,我必须能够访问位于另一页上的表单元素,而不必打开另一页 按下该按钮将从未打开的页面编辑表单中的一些元素,然后发布,所有这些都不会打开任何额外的弹出窗口/选项卡/窗口。表单发布后,按钮将消失 所讨论的表单包含唯一的参数,如果不访问其特定页面,则无法检索这些参数,因此我无法在独立模式下模拟该表单 我的一些猜测是使用一个动态iframe集来显示:none或Ajax,但除此之外,我不确定这是否可行以及如何实现 有人有什么想法吗
在test2页面中,可以从test3.htm页面更改global的值。我是这样做的,使用jQuery: 使用$.get从表单页面获取HTML代码 从HTML字符串中提取表单节点 创建一个隐藏的iframe 在新的iframe中解析表单的HTML 修改表单的值; 使用jQuery的.serialize对表单数据进行URL编码; 使用$.Post将序列化数据发布到目标,并使用 接收响应的回调函数 如果响应指示成功,则隐藏按钮并移除隐藏的 iframe
我决定从$.get返回的HTML字符串中提取表单,因为在将实际表单用作对象之前,解析表单不需要加载整个表单页面。使用隐藏的iframe进行解析可能不是最专业的方法,但它很有效。我是这样做的,使用jQuery: 使用$.get从表单页面获取HTML代码 从HTML字符串中提取表单节点 创建一个隐藏的iframe 在新的iframe中解析表单的HTML 修改表单的值; 使用jQuery的.serialize对表单数据进行URL编码; 使用$.Post将序列化数据发布到目标,并使用 接收响应的回调函数 如果响应指示成功,则隐藏按钮并移除隐藏的 iframe
我决定从$.get返回的HTML字符串中提取表单,因为在将实际表单用作对象之前,解析表单不需要加载整个表单页面。使用隐藏的iframe进行解析可能不是最专业的方法,但它很有效。您愿意使用jQuery吗?任何方法都可以,无论是jQuery、Ajax还是其他任何方法。这是一个用户脚本。你愿意使用jQuery吗?任何方式都可以,无论是jQuery、Ajax还是其他方式。这是一个用户脚本。
<html>
<head>
<title>test</title>
<frameset rows="25px,*" frameborder="0" framespacing="0" >
<frame name="Frame2" id="Frame2" src="test2.htm"/>
<frame name="Frame1" id="Frame1" src="test3.htm"/>
</frameset>
</head>
</html>
<html>
<script>
var global="testing"
</script>
</html>
<html>
<script>
alert(parent.window.frames[0].global);
parent.window.frames[0].global="local"
function test()
{
alert(parent.window.frames[0].global);
}
</script>
<body>
<input type="button" onclick="test()" />
</body>
</html>