如何更改POST请求
问题描述:
我想在iframe中的html中发布发布请求,但此后发布请求用户自动重定向到请求页面。 我想做出正确的请求,不用重定向。如何更改POST请求
<form id="main-mailing-list" action="https://api.telegram.org/botXXXXXXXX/sendMessage" method="POST" enctype="multipart/form-data"
<input type="hidden" name="chat_id" value="-44947">
<input tabindex="0" autocomplete="email" id="emailfield" data-validation="email" class="required email" name="text" type="email" placeholder="Your email address">
<button id="submit" type="submit">SUBMIT</button><br><br>
<span id="thanks"></span>
</form>
答
在jQuery中,你可以做这样的:
$("#submit").on("click", function(e){
e.preventDefault(); //prevent from default behavior
var email = $("#emailfield").val();
var chat_id = $("#main-mailing-list [name='chat_id']").val();
var data = {
email: email,
chat_id: chat_id
};
$.ajax({
method: "POST",
url: "https://api.telegram.org/botXXXXXXXX/sendMessage",
data: data
}).done(function(response){
console.log(response)
}).fail(function(error){
console.error(error)
});
});
当然,如果如预期,很可能是头设置不正确的东西是行不通的。更多关于它的信息here
+0
感谢您的帮助。但是,当我尝试使用此代码时,页面重定向到我的网站,但带有参数。所以它看起来像这样:mywebsite.com/index.html?chat_id=-2447777&text=yaya%40ya.com – VladyslavPG
+0
然后尝试更改事件绑定到这个:$(“#main-mailing-list”)。on(“submit “,function(e){e.preventDefault(); ...其余的代码...})' –
如果你只需要做这个请求,你必须了解[AJAX](https://en.wikipedia.org/wiki/Ajax_(编程)) – Vivick
https://api.jquery .com/jquery.post/ – chakri