javascript - 更改页面上的所有链接并让它们发布请求

标签 javascript html

我正在编写一个 j 脚本,它可以替换页面上的所有链接并将它们转换为表单,因此可以使用 post 方法而不是 get 方法发送请求。

我的代码是:

setTimeout(function() {
    var linkss=document.links;
    for (var x=0; x<linkss.length; x++) {

        var href=linkss[x].href;
        var u_id="3";

        linkss[x].href="#";
        linkss[x].onclick=function(){
            var myForm = document.createElement("form");
            myForm.action="http://kodaa.ir/s/";
            myForm.target="myFrame";
            myForm.method="POST";

            var url=document.createElement("input");
            url.name="url";
            url.value="www.google.com";
            myForm.appendChild(url);

            var u=document.createElement("input");
            u.name="u_id";
            u.value="3";
            myForm.appendChild(u);

            myForm.submit();
            return false;
        };
    }
}, 2500);

所以我有两个问题:

1- 为什么我的代码不起作用? (它只是从中删除了 href 属性,但在点击时没有做任何事情)

2- 如何将这两个变量(var href 和 var u_id)传递到函数内部?

谢谢你的帮助

最佳答案

请尝试以下代码。您错过了将表单对象附加到主体元素。我刚刚添加了“document.body.appendChild(myForm);”这条线。

setTimeout(function() {
    var linkss=document.links;
    for (var x=0; x<linkss.length; x++) {

        var href=linkss[x].href;
        var u_id="3";

        linkss[x].href="#";
        linkss[x].onclick=function(){
            var myForm = document.createElement("form");
            myForm.action="http://kodaa.ir/s/";
            myForm.target="myFrame";
            myForm.method="POST";

            var url=document.createElement("input");
            url.name="url";
            url.value="www.google.com";
            myForm.appendChild(url);

            var u=document.createElement("input");
            u.name="u_id";
            u.value="3";
            myForm.appendChild(u);
            document.body.appendChild(myForm);

            myForm.submit();
            return false;
        };
    }
}, 2500);

关于javascript - 更改页面上的所有链接并让它们发布请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46703148/

相关文章:

javascript - JQuery:如何删除除第一个包含子字符串作为 'id' 标记之外的所有 div 元素?

javascript - 如何检查电子邮件地址是否包含 @ 符号和 '.' 。在 html 和 javascript 中

javascript - 将组件连接到 redux 全局状态 vs 将 props 传递给 React-Native 中的子组件

javascript - 如何在单击按钮时将 HTML 文本框的值(内容)传递给 javascript 函数?

html - 使用 Typescript 隐藏元素

html - 'error' 的 CSS 和只读文本框

JavaScript:如何在 HTML5 localStorage 中保存 html 文本

javascript - 在纯javascript中隐藏div onclick

html - 能不能把 DropDownList 控件在 IE10 中的显示样式改成 IE9 一样?

JavaScript 指针和日期