快速背景:對web開發非常新穎。我有一個用戶可以填寫表單的引導頁面。有四個字段(兩個文本框,一個廣播,一個下拉)。這個想法是使用該輸入數據形成一個JSON並將其發佈到我的HTTP服務器,但它似乎沒有工作了。很奇怪,我的代碼在幾個小時前完美工作(已經使用requestb.in進行了測試)。 現在突然它(1)只發送POST,如果我有apiname和apiurl變量的長整型值,並且(2)不再看到我從無線電覆選框(env1 - env3)中選擇了什麼,而是總是認爲我選擇了「開發」,而不管實際選擇了什麼。 我假設我的問題是由jQuery的在我的代碼引起的,而不是HTML,所以我已經把它貼在這裏:jQuery HTTP Post停止工作,僅在輸入長字符串時才起作用
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"> </script>
<script>
$(document).ready(function(){
$("button").click(function(){
var env1 = document.getElementById("seldevid");
var env2 = document.getElementById("selstageid");
var env3 = document.getElementById("selprodid");
var apiname = $("#apinameid").val();
var apiurl = $("#apiurlid").val();
var actionvar;
$("#actionid").change(function() {
actionvar = $(this).val();
}).change();
if (env1.checked = true) {
var env = "Dev";
} else if (env2.checked = true) {
var env = "Stage";
} else if (env3.checked = true) {
var env = "Prod";
}
$.post("http://requestb.in/107fmof1",
{
apiName: apiname,
apiURL: apiurl,
environment: env,
action: actionvar
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
});
</script>
感謝您的幫助!
嗯,這似乎解決了單選按鈕的問題,但它仍然不會一直開機自檢。我似乎甚至無法找到任何模式,但它並不POST,似乎完全是隨機的。我使用了開發人員工具,這表明幾乎總是有一個POST,但'參數'幾乎每次都是空的(所以HTTP服務器沒有收到任何東西)。 – user6656429
一種可能性是您在執行$(document).ready(...)代碼之前提交表單。在這種情況下,如果您沒有爲表單域指定任何名稱,那麼您會看到一個空的POST。 – Andy
在空POST的情況下,你是否看到apiName等字段,但它們是空的?或者你沒有看到POST數據?或者是什麼?另外,您的