这真的很令人沮丧,我希望能得到一些帮助。我有一个名为“comments”的div,并在其中放置了一个表单。我想要做的是将表单发布到当前页面,并使其在不重新加载整个页面的情况下加载到该div中。以下是我的当前代码:
<div id="comments">
<form action="#" method="post" onsubmit="return false;" >
<input type="hidden" name="txtname" value="test">
<textarea id="wysiwyg" name="wysiwyg" rows="5" cols="50"></textarea>
<input type="submit" name="post" id="post" value="Submit">
</form>
<script type="text/javascript">
EDIT: Read edit below for current code
</script>
</div>
当我提交时,警报会触发,但页面不会加载。如果我将事件更改为以下方式,则可以正常工作:
$("#comments").load("comments.asp");
这段代码不是用来发布数据的。我之前使用过.load,但从未用于发布数据。我从这些论坛中获取了上述代码。
我真的不确定'name'和'tel'的目的——在处理代码时,我是参考这些变量还是表单变量名称?这是在ASP经典版中。
以上代码有什么问题,如何通过POST发送表单数据?谢谢!
编辑: 我现在使用以下代码:
$("#post").submit(function(event){
var $form = $(this),
$inputs = $form.find("input, select, button, textarea"),
serializedData = $form.serialize();
$inputs.attr("disabled", "disabled");
$.ajax({
url: "/comments.asp",
type: "post",
data: serializedData,
success: function(response, textStatus, jqXHR){
console.log("comment posted");
},
error: function(jqXHR, textStatus, errorThrown){
console.log(
textStatus, errorThrown
);
},
complete: function(){
// enable the inputs
$inputs.removeAttr("disabled");
}
});
event.preventDefault();
});
现在表单已经被正确处理了...但是它跳转到了comments.asp页面。我该如何让所有操作发生在特定的div中(评论div)?