我有一个日历页面,允许用户创建任务并更新它们。当他点击更新按钮时,该按钮会触发提交表单,该表单将taskid提交到另一个页面。在该页面上,我查询数据库,并预填充输入值。一切都适用于Chrome和Firefox,但在IE中,表单似乎在重定向到更新页面时提交,但更新页面确实获得了后期输入值。代码如下:
形式:
<form id="update-task-form-'.$row["taskid"].'" style="display: none;" action="../update-task/" method="POST">
<input type="hidden" name="recordToUpdate" id="recordToUpdate" value="'.$row["taskid"].'"/></form>
jQuery的:
$("body").on("click", ".update-button", function(e) {
e.preventDefault();
var clickedID = this.id.split('-');
var DbNumberID = clickedID[1];
$("#update-task-form-" + DbNumberID).submit();
});
在新页面上我有:
if (isset($_POST["recordToUpdate"])) {
$idToUpdate = filter_input(INPUT_POST, 'recordToUpdate', FILTER_SANITIZE_NUMBER_INT);
more code
}
我尝试了很多方法,例如将表单附加到正文或添加提交按钮,但没有一个在IE中有效。
有谁知道如何解决这个问题?
谢谢。
编辑1:
<tr id="task-'.$row["taskid"].'">
<form id="update-task-form-'.$row["taskid"].'" style="display: none;" action="../update-task/" method="POST">
<input type="hidden" name="recordToUpdate" id="recordToUpdate" value="'.$row["taskid"].'"/>
<input type="submit" name="recordToUpdate1" id="recordToUpdate1" value="Submit"/>
</form>
</tr>