Мне нужно создать форму с несколькими входами, когда происходит событие. Мой код ниже.
Chrome отправляет нормально — отображается окно предупреждения, и страница меняется.
Firefox не работает - отображается окно с предупреждением, но страница остается прежней. Как заставить Firefox отправить форму?
var idsInput = document.createElement('input');
idsInput.name = 'itemIds';
idsInput.value = ids;
var quantityInput = document.createElement('input');;
quantityInput.name = 'quantity';
quantityInput.value = 1;
var authTokenInput = document.createElement('input');
authTokenInput.name = 'authenticityToken';
authTokenInput.value = '${session.getAuthenticityToken()}';
var submitInput = document.createElement('input');
submitInput.type = 'submit';
submitInput.value = 'anything';
var form = document.createElement('form');;
form.action = '@{Checkout.setItemsQuantityHandler}';
form.method = 'POST';
form.elements[0] = idsInput;
form.elements[1] = quantityInput;
form.elements[2] = authTokenInput;
form.elements[3] = submitInput;
form.submit();
alert('after submit()'); // for debugging only
display:none
и добавьте ее к существующему элементу в DOM, а затем отправьте ее. Я полагаю, что FF требует, чтобы он уже был в DOM. - person BalusC   schedule 06.03.2011display:none
- person JCOC611   schedule 06.03.2011document.body.appendChild(form);
сработало. Спасибо! Если вы хотите поставить это как ответ, я приму это. - person Amy B   schedule 06.03.2011display:none
. - person BalusC   schedule 06.03.2011