Как я могу использовать чистый JavaScript, чтобы добавить действие формы в качестве скрытого элемента? - PullRequest
1 голос
/ 08 июля 2011

Я пытаюсь написать букмарклет, чтобы изменить действие всех форм на странице на указанный URL-адрес, для этого примера я использую google.com, а также добавить скрытый элемент формы с именем "action" с помощью исходное значение.

У меня работает первая часть:

javascript:(function(){var x,i; x = document.forms; for (i = 0; i < x.length; ++i) x[i].action="http://www.google.com/"; })();

Но как мне использовать чистый javascript, чтобы добавить оригинальное действие форм как новый скрытый элемент, как этот?

<input type="hidden" name="action" value="http://original-action-url.com" />

1 Ответ

3 голосов
/ 09 июля 2011

если я вас правильно понимаю, это ->

var action = document.forms[0].action;
document.getElementsByName('action')[0].setAttribute("value", action);

Редактировать (после вашего комментария) ->

y = document.forms; 
for (i = 0; i < y.length; ++i){
var x = document.createElement("input");
x.setAttribute("name", "hiddenAction" + i);
x.setAttribute("type","hidden");
x.setAttribute("value",y[i].getAttribute("action"));
y[i].appendChild(x); //you said Appended to the form.
}

Не проверял его, поэтому может потребоваться небольшая настройка,Надеюсь, это поможет.

...