[英]Javascript automatically trigger button to submit php form with dynamic action link
我有一個動態創建其操作鏈接的表單。
基本上頁面填充有分頁,第一頁和最后一頁的表單操作鏈接不同。 我有一個計時器正在運行,超時時我希望提交表單。
現在問題來了。 如果用戶在第一頁,則在超時期間,javascript 提交 function 提交,其中包含為第一頁創建的動態操作鏈接。 我最初的目的是提交最后一頁操作鏈接的表單。
<form method="post" id="submitmyform" <?php if($page==$firstpage){?> action="1st/page/action/link"<?php }elseif($page==$lastpage){?>action="last/page/action/link"<?php } ?> >
<?php if($page==$firstpage){?>
<input type="hidden" name="firstpagecontent1" value="somthing" >
<input type="hidden" name="firstpagecontent2" value="somthingelse" >
<button type="submit" id="firstpagebutton" name="firstpagebtn" value="1">
<?php }elseif($page==$lastpage){?>
<input type="hidden" name="lastpagecontent1" value="somthing" >
<input type="hidden" name="lastpagecontent2" value="somthingelse" >
<button type="submit" id="lastpagebutton" name="lastpagebtn" value="2">
<?php } ?>
</form>
<script>
function ontimeout{
var button = document.getElementById('lastpagebutton'),
form = button.form;
form.addEventListener('submit', function(){
return true;
})
}
</script>
我對 PHP 部件沒有任何問題。 我只是想弄清楚 JS 如何為我工作。 上面的 JS 不起作用。 它經常提交但不提交最后一頁的值。 任何人都可以指導我找出我被卡住的地方並可能指出一條路。
注意:上面的代碼只是給出概念的說明。 我沒有在這里將分頁作為它的一段長代碼包括在內,我只是對 JS 有問題。
提前謝謝了。
setTimeout(function(){
// Invoke function every 10 minutes
$('#lastpagebutton').trigger('click');
}, 600000);
使用 jquery
由於您使用 PHP 來更改表單操作,因此在您到達最后一頁之前無法訪問操作值,這意味着它不會發生在表單提交操作中,而它與最后一個頁面不同.
我建議將最后一頁url/action放在不同的 php 變量中,因此它可以隨時用於 JS 過期/重定向。 就像是:
1:超時 - 重定向最后一頁
<?php
$lastPageUrl = 'https://example.com';
?>
<script type="application/javascript">
setTimeout(function() { timeOut() }, 3000);
function timeOut() {
var lastPage = "<?= $lastPageUrl ?>";
location.replace(lastPage);
}
</script>
2:超時 - 更新表單動作最后一頁
<script type="application/javascript">
function timeOut() {
var form = document.getElementById('submitmyform');
form.action = '<?= $lastPageUrl ?>';
}
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.