2013-09-11 2 views
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()); 

но теперь мне нужно, чтобы установить его обратно к оригиналу. Я мог бы использовать приведенный выше код еще раз, чтобы сбросить, но я предпочел бы сбросить с помощью метода по умолчанию, если возможный

+0

Что вы попробовали? –

+0

Пожалуйста, разместите свои JS и HTML. –

+0

для сброса i был сброс с использованием form.attr вручную, но я спрашивал, есть ли способ вернуть его обратно по умолчанию –

ответ

2

Попробуйте:

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

На JSFIDDLE

Артикул:w3schools

+0

, хотя это javascript, который вы правы. Спасибо за ваш ответ –

+0

Я рад помочь :) – PabloWeb18

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")); 

И следующая заявка будет находиться в главном окне, на исходную страницу действий.

+0

жаль, что я имею в виду, что по умолчанию на html есть action = "test.php" form.attr ("action", "new"), а затем после формы. Отправить(); верните исходный метод (до вмешательства jquery) в test.php –

+0

@LiamSorsby достаточно справедливо, см. мое редактирование. :) –

+0

Благодарим вас за редактирование. и ваша помощь в этом. –

Смежные вопросы