1

我目前正在form.attr使用 jQuery,我已经修改了这些以使用iframe上传,但是现在上传已经完成,我需要将这些更改恢复回来。是否有捷径可寻?例如form.revert(),还是我需要使用该form.attr()功能重置这些?

我使用的代码是:

var form = $('.myform');
form.attr("action", "scripts/old.php");
form.attr("method", "post");
form.attr("enctype", "multipart/form-data");
form.attr("encoding", "multipart/form-data");
form.attr("target", "postiframe");
form.attr("file", $('#userfile').val()); 

但我现在需要将其设置回原来的。我可以再次使用上面的代码进行重置,但如果可能的话,我宁愿使用默认方法进行重置

4

2 回答 2

2

试试看:

document.getElementById("formID").reset();

关于JSFIDDLE

参考: w3schools

于 2013-09-11T13:05:31.443 回答
1

我假设您的意思是使表单提交到 iframe 的代码?

var form = $("#form1");
form.attr("target", "MyFrame");
form.attr("action", "newpage.php");
form.submit();

在这种情况下,只需将原始值存储为数据值并在提交后立即恢复:

//get jQuery element:
var form = $("#form1");

//store original values:
form.data("original_target", form.attr("target"));
form.data("original_action", form.attr("action"));

//change values:
form.attr("target", "MyFrame");
form.attr("action", "newpage.php");

//submit:
form.submit();

//revert back to original:
form.attr("target", form.data("original_target"));
form.attr("action", form.data("original_action"));

下一次提交将在主窗口中,到原始操作页面。

于 2013-09-11T13:07:59.453 回答