【发布时间】:2018-09-08 14:23:37
【问题描述】:
脚本.JS
$(document).ready(function(){
$('form').on('submit', function (e) {
e.preventDefault();
$.ajax({
type: 'post',
url: 'data/addtext.php',
dataType: 'HTML',
success: function (result) {
$('#meo').html(result);
}
});
});
});
索引.PHP
<div id="meo"></div>
ADDTEXT.PHP
<?php echo "HELLO WORLD" ?>
以上是我的代码。我想要发生的是每次我提交表单时,都会打印出“HELLO WORLD”这个词,这个代码在第一次点击提交时工作,输出将是
HELLO WORLD
现在,我想再次打印它,所以我将再次单击提交按钮,但在第二次提交时,什么都没有打印出来。为什么?
我想要的输出是
HELLO WORLD HELLO WORLD
换句话说,我想在每次提交时打印出“HELLO WORLD”,但旧的输出将保留。所以如果我提交表单 3 次,那么输出应该是
HELLO WORLD HELLO WORLD HELLO WORLD
我知道我可以使用追加而不使用表单来执行此操作,但我想使用表单 ajax 来执行此操作而无需重新加载页面。此代码再次起作用,但仅在第一次单击提交时起作用。
为什么在第二次点击提交时不起作用?
【问题讨论】:
-
您没有将结果附加到
#meo,您每次都完全替换它。而不是$('#meo').html(result);尝试$('#meo').html($('#meo').text() + result); -
@ochi ,因为你的评论,我终于明白了,答案很简单,我没有注意到。谢谢