簡體   English   中英

javascript 返回 false 或 preventDefault 不起作用

[英]javascript return false or preventDefault is not working

我知道這必須是顯而易見的,但是即使按照其他地方的說明進行操作,我也會得到相同的結果。

JavaScript 呼叫上的警報出現,但單擊確定后,它繼續提交表單。

function validateBadEmail(inputText)
{
    var mailformat = /.ru$/
    if(inputText.value.match(mailformat))
    {
        alert("This is not an accepted email address");
        inputText.preventDefault();
    }
}

我是這樣稱呼它的:

<input type="button" id="submit-btn" class="btn btn-blue btn-less-padding" name="submit-btn" value="<?= $txt_submit_btn; ?>" tabindex="0" onclick="return validateBadEmail(document.the_form.email)"/>

我已經通過使用return false而不是preventDefault進行了嘗試,但這具有相同的效果。

如果我將onclick更改為onsubmit ,它甚至根本不會調用 javascript。

編輯:顯然 preventDefault 是錯誤的方式,但如果我嘗試這樣做,我仍然會得到相同的結果

function validateBadEmail(inputText)
{
    var mailformat = /.ru$/
    if(inputText.value.match(mailformat))
    {
        alert("This is not an accepted email address");
        return false;
    }
}

首先:您的validateBadEmail function 缺少return指令。 為任一 IF 情況設置一個返回值。

編輯

第二:驗證輸入數據必須在包含 FORM 的onsubmit事件處理程序中完成。 在輸入控件中處理onclick事件不會阻止表單被提交。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM