单击按钮不转到JS功能


onClick for button not going to JS function

我正在尝试使用 onClick 定向到 JS 函数,但似乎没有任何效果,我已经尝试过:

.HTML:

<button type="button" id="deleteBtn" onClick="toDelete();">Delete Event</button>

.JS:

document.getElementById("deleteBtn").onclick = function() {toDelete()}

.JS:

document.getElementById("deleteBtn").addEventListener("click", toDelete);

这是我的函数:

function toDelete()
    {
        var answer = confirm("Are you sure you want to delete this event?'nPress OK to confirm deletion or CANCEL otherwise");
        if (answer)
        {
            alert("The event has been deleted!");
            <?php
            echo "<form id='deleteForm' name='deleteForm' method='post' action='redirected/deleteRecord.php'>";
                echo    "<input name='EVENT_ID' type='hidden' value='{$EVENT_ID}'>";
                echo    "<input name='eventName' type='hidden' value='{$eventName}'>";
                echo    "<input name='addressLine_1' type='hidden' value='{$addressLine_1}'>";
                echo    "<input name='addressLine_2' type='hidden' value='{$addressLine_2}'>";
                echo    "<input name='townCity' type='hidden' value='{$townCity}'>";
                echo    "<input name='postcode' type='hidden' value='{$postcode}'>";
                echo    "<input name='description' type='hidden' value='{$description}'>";
                echo    "<input name='cost' type='hidden' value='{$cost}'>";
                echo    "<input name='eventDate' type='hidden' value={$eventDate}'>";
            echo "</form>";
            ?>
            document.getElementById('deleteForm').submit();
        }
        else
            location.replace("events.php");
    }

我编写了一个带有一个隐藏输入字段的示例代码片段(您可以在那里添加 php 代码)。当<form>元素移动到<script>标签之外时,它起作用。

function toDelete() {
	var answer = confirm("Are you sure you want to delete this event?'nPress OK to confirm deletion or CANCEL otherwise");
  
	if (answer) {
		alert("The event has been deleted!");
		document.getElementById('deleteForm').submit();
	}
	else
		location.replace("events.php");
}
function updateConfirm() {
		alert("Event has been updated!");
}
<button type="button" id="deleteBtn" onclick="javascript:toDelete();">Delete Event</button>
<form id='deleteForm' name='deleteForm' method='post' action='redirected/deleteRecord.php'>
  <input name='EVENT_ID' type='hidden' value='testid'>
</form>

尝试使用 setTimeout

document.getElementById("deleteBtn").onclick = function() {setTimeout(function(){toDelete()},500);}