簡體   English   中英

驗證在Firefox中不起作用,在IE中可以正常工作

[英]Validation does not work in Firefox, works fine in IE

我在客戶端有一封電子郵件驗證碼。 它工作正常/在IE中符合預期,但在Firefox中卻不顯示錯誤消息。

下面是代碼:

<asp:ImageButton ID="btnLink" runat="server" AlternateText="ClickHere" OnClientClick="return onCClick();" OnClick="btnLink_Click"/>  
<div id="errorEmail" runat="server"></div>

//function to validate
        function onCClick() {
//clear error message
            document.getElementById('<%=errorEmail.ClientID%>').innerText = "";
//if validation fails
            if (validateEmail() != true) {
//show error message
                document.getElementById('<%=errorEmail.ClientID%>').innerText = "Invalid Email Address.";
                return false;
            }
}

function validateEmail() {
            var emailId = document.getElementById('<%=txtEmail.ClientID%>').value;
            var emailPattern = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
            return emailPattern.test(emailId);
        }

有什么我應該照顧的嗎? 我的錯誤消息div設置為空白,但在任何地方都不可見(在這種情況下,javascript也無法正常工作)

innerText不是跨瀏覽器,Firefox使用textContent

您可以使用如下功能:

function changeText(elem, changeVal) {
    if ((elem.textContent) && (typeof (elem.textContent) != "undefined")) {
        elem.textContent = changeVal;
    } else {
        elem.innerText = changeVal;
    }
}

或者只是使用innerHTML

最好您嘗試使用innerHTML ..它將起作用。

document.getElementById('errorEmailAddress').innerHTML = "Error Message";

暫無
暫無

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

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