我需要将表单的状态保存到服务器,以便用户在重新访问站点时可以重新加载它。但是,我不希望当前页面刷新。
在某种程度上,我的表单有一个文本输入字段和一个保存按钮:
<form name="selectparams" action="" method="GET">
...
Name: <input type="text" id="user_name">
<input type="submit" value="Save!"
onclick="save_form(this); return false;">
单击“保存”按钮时,将调用此函数:
function save_form(button) {
var input = $("#user_name");
var name = input.val();
if (name == "") {
alert("You didn't enter a name. I will call you 'Sam'");
name = "Sam";
}
var client = new HttpClient();
var args = {
name: name,
value: JSON.stringify(button.form.values())
};
var url = Arg.url("/save", args);
client.get(url, function(resp) { console.log("saved"); });
};
这一切似乎都运行正常,但页面刷新,失去了两者 现有表单设置和用户生成的任何其他内容 (使用表单的多个提交,每个提交生成一个2d 图)。
我怎么能不这样做?
... THX
答案 0 :(得分:1)
按钮类型按钮不提交类型
<input type="button" value="Save!" onclick="save_form(this);">
答案 1 :(得分:0)
对于这种情况,您可以使用return false。
<input type="submit" value="Save!" onclick="return save_form(this);"/>
在函数last中,您可以返回false,如下所示
function save_form(button) {
.........
.........
return false;
}