簡體   English   中英

使用javascript / ajax在另一個頁面上提交表單

[英]Submit form on another page using javascript/ajax

我想使用ajax提交另一個頁面上的表單。 這是我的代碼:

Send();
function Send() {
var abc = document.getElementsByClassName("main");
for (var i = 0; i < abc.length; i++) {
    var item = abc.item(i);
            var mainButton = item.getElementsByClassName("mybuttonclass");
            if (mainButton.length > 0) {
                if (mainButton[0].innerText.includes("some text")){

                    var url = mainButton[0].getAttribute("href");                
                    loadXMLDoc(url, title, text);
                }

            }
        }  
    }

function loadXMLDoc(url, title, text) {
var xmlhttp = new XMLHttpRequest();
xmlhttp.responseType = "document";
xmlhttp.onreadystatechange = function () {
    if (xmlhttp.readyState == XMLHttpRequest.DONE) {
        if (xmlhttp.status == 200) {
                var resp = xmlhttp.response;
                var textArea = resp.getElementsByClassName('textarea');                   
                 textArea.value = "Hello, this is my test message!";                     
                 var subBtn = resp.getElementsByClassName('btnclass');
                 if (subBtn.length > 0) {
                     subBtn.click();
                 }                
        }
        else if (xmlhttp.status == 400) {
            console.log('There was an error 400');
        }
        else {
            console.log('something else other than 200 was returned');
        }
    }
};

xmlhttp.open("POST", url, true);
xmlhttp.send();
}

這沒有按預期工作,消息中沒有發送任何內容,也沒有記錄錯誤。 我錯過了什么? 如何實現這一目標。 任何幫助表示贊賞。

謝謝。

加載頁面時,服務器應該完成刷新。 如果那不是一個選項,我會在同步模式下使用jQuery的$ .ajax方法,攻擊選項卡的click事件:

$('a.tab').click(function() {
    $.ajax({
        url: "/refresh",
        method: "post",
        async: false,
        data: { refresh: "ok" }
    });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM