如何改变iFrame结果JavaScript警告框
How to change iFrame results to JavaScript alert box?
我可以访问一个url,运行一个脚本来清除用户状态。我想产生一个脚本,将在网页上运行,做到这一点。
下面的脚本可以工作,但在Firefox中,人们每次访问页面时都必须禁用混合内容,这很烦人:
<SCRIPT LANGUAGE="JavaScript">
function go(loc,loc2){
document.getElementById('userstate').src = loc +
document.getElementById('username').value + loc2;
}
</script>
<form onSubmit="go('http://mysiteurlomitted.com/userstate/?userId=','&app=cc'); return false;"/>
Username: <input type="text" id="username">
<input type="submit" value="Clear User State">
</form>
<iframe id="userstate" src="about:blank" width="470" height="30" frameborder="1" scrolling="no"></iframe>
结果URL生成一个简单的文本字符串,结果页面上没有HTML,所以我觉得应该很容易将这个URL作为文件读取,并将结果加载到一个警告框中。这将避免iframe
方法,并摆脱混合内容的情况。它将运行而不需要任何人更改任何内容。但我不知道该怎么做。我觉得FileReader()
应该是一个很好的方法,但URL有参数…所以读者不知道它是什么文件类型。它只是失败了。一定有更简单的方法。
你不需要任何javascript来做这种事情。只需向用户名输入添加一个name属性,该值就会以"&username= name"的形式在查询字符串中传递。所以:
<form action="/userstate?app=cc">
Username: <input type="text" id="username" name="username" />
<input type="submit" value="Clear User State" />
</form>
这将提交表单到"http://samedomain.wut/userstate?app=cc&username=",这将在服务器端通常的post数据源中可用。
还有其他更好的方法,但是我不知道你的设置。您应该研究cookie/会话的服务器端管理;除了初始登录,用户不需要输入任何东西。
编辑:如果您想将其用作管理工具,您可以做两件事:使用ajax (XMLHttpRequest或$。或者让您的端点重定向回(或服务)表单。您可以将表单提交到它自己的url,然后在服务器端脚本中处理数据,然后再次输出表单的html。对于实际应用程序来说,这不是一个很好的模式,但在这种情况下应该可以工作。
相关文章:
- 奇怪的Javascript结果
- Javascript(jQuery)给了我奇怪的结果
- 数组删除重复结果Javascript
- 比较数组中的连续元素不会返回任何结果(javascript)
- split(' ') 函数没有给出正确的结果 Javascript
- 如何产生结果Javascript嵌套缺陷
- I'm试图使用onclick函数显示函数的结果.(javascript)
- 计算结果Javascript中不同数字的数量
- 以 HTML 格式显示计算结果 (javascript)
- 没有得到预期的结果 - javascript
- 从函数返回结果 - JavaScript
- 在一行中返回来自三元的结果(JavaScript)
- 骰子效果-如何在最后显示假结果和真结果(JavaScript)
- WebGL纹理加载结果(Javascript)类型错误
- 限制搜索结果Javascript
- IF语句多个答案-相同的结果Javascript
- 双异步循环,如何保证正确排序顺序的最终结果?(javascript)
- 添加图像到测验结果javascript
- 奇怪的结果javascript比较
- 如何改变iFrame结果JavaScript警告框