我試圖在頁面加載時在頁面上提交表單,如果在查詢字符串中設置了某些參數。表單使用ajax提交併且工作正常,並且查詢字符串中表單字段的預填充很好,但無論我嘗試自動提交表單,我最終都會導致無限循環的頁面加載。如果設置了GET參數,jQuery觸發器頁面加載提交
PHP
// top of page
<?php
if (isset($_GET['postcode'])) {
$postcode = trim($_GET['postcode']);
} else {
$postcode = '';
}
if (isset($_GET['phone_num'])) {
$phone_num = trim($_GET['phone_num']);
} else {
$phone_num = '';
}
?>
jQuery的
/*
// causing infinite page loads
if ($('input[name="phone_num"]').val() != '' || $('input[name="postcode"]').val() != '') {
$('#check').trigger("click");
return false;
}
*/
$('form').submit(function() {
$.get("script.php", $(this).serialize(), function(data){
// process results
}, "json");
return false;
});
HTML
<form class="navbar-form pull-right" action="" method="get">
<input class="span2" type="text" name="phone_num" placeholder="Phone Number" value="<?php echo $phone_num; ?>">
<input class="span2" type="text" name="postcode" placeholder="Postcode" value="<?php echo $postcode; ?>">
<button type="submit" class="btn btn-primary" id="check">Check</button>
</form>
而不是使用一個的210函數的自動錶單提交我試過做同樣的$('form').submit
,但我得到同樣的問題。我期待頁面正常工作,所以如果參數被設置,那麼ajax調用會自動進行,但顯然不是這種情況。
你爲什麼觸發點擊事件提交表單?爲什麼不只是...提交表格?注意:這不會解決您的問題。 –
@KevinB這只是我嘗試過的最新迭代,我已經使用'$('form')。submit'以及'$('#check')。trigger(「click」);'。 – martincarlin87