2015-01-06 2 views
0

У меня есть простая форма HTML как это:Как отправить форму как на страницу, так и на iframe?

<form id="simple-form" method="get" action=""> 
    <input name="year" type="number" value=""> 
    <input name="month" type="number" value=""> 
    <input name="day" type="number" value=""> 
    <button type="submit" id="potvrdi" onclick="return submitForms()">Submit</button> 
</form> 

При нажатии кнопки отправки, она вызывает функцию JS. Я попытался заставить JS-функцию отправить форму нескольким целям (на индексную страницу и iframe), но она не работает. Вот мой Javascript:

function submitForms() { 

    var formular = document.getElementById('simple-form'); 

    formular.action='index.php'; 
    formular.target='_self'; 
    formular.submit(); 

    formular.action='my-map.php'; 
    formular.target='map-frame'; 
    formular.submit(); 

    return true; 
} 

Я succed представить только на страницу или на фрейм, но не оба. Любые идеи, как это исправить?

+0

, если вы отправляете с 'target = '_ self'', не приведет ли это к навигации и удалит iframe? – guest

+1

Форма обновила страницу. Поэтому, когда он будет выполнен, он сделает одно, но не то, и другое. – Mouser

+0

Но как его предотвратить? Я попытался с функцией возврата onclick ... –

ответ

0

Я думаю, что проблема заключается в том, что момент, когда вы отправляете на страницу «сама», мгновенно обновляется, что не дает iframe возможности обрабатывать данные формы. Следовательно, вы можете отправлять только iframe или «_self», который обновляет страницу.

Один из способов - использовать AJAX для обработки запроса «_self», останавливая обновление страницы.

EDIT:

Если вы используете только чистые JS (в отличие от использования JQuery), а затем проверить это: http://code.tutsplus.com/articles/how-to-make-ajax-requests-with-raw-javascript--net-4855

Для JQuery, как уже упоминалось @mheiber, проверить это: http://api.jquery.com/jquery.post

+0

http://api.jquery.com/jquery.post/ –

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