我正在尝试通过执行类似下面的javascript来设置textarea的值:
javascript:alert(document.getElementsByClassName('uiTextareaNoResize uiTextareaAutogrow _1rv DOMControl_placeholder')[0].value='blabla');
如果我手动将代码输入目标页面的地址栏,这是有效的,但我想通过链接传递这个参数..即...
<a href="/nextpage.php?javascript:alert(document.getElementsByClassName('uiTextareaNoResize uiTextareaAutogrow _1rv DOMControl_placeholder')[0].value='blabla');"
只是想知道这样的事情是否可行?
答案 0 :(得分:0)
您可以通过URL发送参数,就像您对GET请求一样。然后让接收页面解析location.search
。
例如,您可以像这样发送:
http://example.com/?arg1=foo&arg2=bar
接收页面有这样的脚本:
var queryString = location.search; //?arg1=foo&arg2=bar
您必须手动解析它,删除?
,按&
拆分,然后按=
答案 1 :(得分:0)
这称为XSS或跨站点脚本,并且正如许多评论已经指出的那样,这是一个安全问题。这就是大多数主流浏览器不允许的原因。 但是,我相信有些浏览器确实允许它,例如Opera - 虽然我不记得究竟是哪个版本。 如果您想制作自己的“浏览器”,我建议使用C#.Net WebBrowser,然后使用运行时包XULRunner(https://developer.mozilla.org/en-US/docs/Mozilla/Projects/XULRunner)。
尽管如此,我不建议做任何可能违反当前法律规定的事情,或做任何令网站所有者不满的事情。