我想像每隔几秒自动保存数据,我测试过我的代码可以保存输入值,但textarea不起作用。
我的表格是这样的:
<from id="my-form" action="@{user.save()}" method="post">
<input name="user.id">
<input name="user.name">
<textarea name="user.intro"></textarea>
</form>
<p class="form-status-holder"></p>
保存页面中的js代码
<script>
var timeoutId;
$('form input, form textarea').on('input propertychange change', function() {
clearTimeout(timeoutId);
timeoutId = setTimeout(function() {
// Runs 1 second (1000 ms) after the last change
saveToDB();
}, 1000);
});
function saveToDB()
{
var url = "@{user.save()}";
$.ajax({
type: "POST",
url: url,
data: $("#my-form").serialize(),
success: function(data) { $("#data-result").html($data); }
});
// Now show them we saved and when we did
var d = new Date();
$('.form-status-holder').html('save success! time: ' + d.toLocaleTimeString());
}
</script>
播放用户控制器
public static void save(){
user.save();
}
问题是什么,我们怎样才能自动保存输入值和textarea值。