我一直绞尽脑汁想要弄清楚如何完成我需要的东西。我有一个锚链接列表,我想首先提交/发布一个表单(到同一页面),然后当用户点击其中一个链接时重定向到该URL。
这是我到目前为止所做的:
<script>
$(document).ready( function() {
$("ul.sort li a").click(function(){
var href = $(this).attr('href');
event.preventDefault();
var form = $("#loc_form");
$.ajax({
type: 'POST',
url: '',
dataType: 'json',
data: form.serialize(),
success: function(data) {
if (data.success)
{
window.location = href;
} else {
console.log(data);
}
}
});
});
});
</script>
我似乎无法将其发送到POST并将该数据发送到重定向的网址。我使用了html dataType,只是在响应中显示了整个html文档。
答案 0 :(得分:0)
我认为您的AJAX功能不正确。尝试这样的事情:
$.ajax({
type: 'POST',
url: '',
dataType: 'json',
data: form.serialize()
}).done(function(data) {
if (data.success) {
window.location = href;
} else {
console.log(data);
}
});
答案 1 :(得分:0)
感谢您的帮助,但答案远比我意识到的要简单得多。我甚至不需要ajax。
$(document).ready( function() {
$("ul.sort li a").click(function(){
event.preventDefault();
var href = $(this).attr('href');
var form = $("#loc_form");
form.attr('action', href)
form.submit();
});
});
这会成功发布数据并相应地重定向页面。