2013-05-22 2 views
4

Я пытаюсь реализовать type = "button" в форме, которая вместо обработки информации с помощью метода doPost обрабатывает форму с использованием метода doGet (в основном для целей возможность правильно обновить URL-адрес). Эта спецификация делает невозможным использование type = "submit" или document.form1.submit(), потому что я не должен ссылаться на метод doPost.Передача данных формы с использованием метода doGet при нажатии кнопки

Я попытался обойти проблему, сначала отправив форму, а затем перенаправляя URL-адрес на кнопку click (и наоборот), но мне трудно преодолевать проблемы HttpServletRequest, так как мне нужно использовать HttpServletRequest из представления формы в методе doGet.

Есть ли способ использовать ajax, чтобы сделать текущие данные формы в HttpServletRequest нажатием кнопки? Я новичок в AJAX, и я уверен в правильном синтаксисе и т.д.

Вот короткая версия о том, что я был в состоянии собрать в HTML до сих пор:

<form id="form1" method="post" action=""> 
    <div> 
    <input id="edit" type="button" name="edit" value="Edit" disabled="true" onClick="window.location.href='/new'"></input> 
    </div> 
</form> 
<script type="text/javascript"> 
    $(document).ready(function() { 
    $("#edit").click(function() { 
     $.ajax({ 
     type: 
     url: '/new', 
     data: 
     success: 
     error: 
     dataType: 
     }); 
    }); 
    }); 
</script> 
+0

просто изменить метод на форме от '' Post' к GET' – Orangepill

+0

Хорошо, я это сделал (используя document.form1.submit() на вызов OnClick, так как я до сих пор не знаю правильной формы ajax), но я остался с той же проблемой - я могу отправить данные, а затем обновить URL-адрес (который выполняет два вызова метода doGet, и я получаю правильный URL-адрес и неверную информацию HttpServletRequest), или я обновляю URL-адрес, а затем отправляю данные и получаю правильную функциональность, но неверный URL-адрес. В конечном счете, я должен иметь возможность одновременно отправлять форму и обновлять конкретный URL. Мысли? –

+0

извините неправильно прочитанное сообщение ... это должно быть то, что вы после http://stackoverflow.com/questions/15397006/ajax-forced-url-update-imediately-after-a-form-submission-jquery-php -mysql-HTM – Orangepill

ответ

0

Используйте следующую правильно код для отправки формы GET:

<form id="form1" method="get" action=""> 
    <div> 
    <input id="edit" type="button" name="edit" value="Edit" disabled="true" onClick="window.location.href='/new'"></input> 
    </div> 
</form> 
<script type="text/javascript"> 
    $(document).ready(function() { 
    $("#edit").click(function() { 
     $.ajax({ 
     type: 
     url: '/new', 
     data: 
     success: 
     error: 
     dataType: 
     }); 
    }); 
    }); 
</script> 
Смежные вопросы