2

入力が有効でない場合にアラートを表示しようとしていますが、OnClientClick が機能していません。コードは次のとおりです。

function validation1() {

    if (document.getElementById('firstname').value == "" || document.getElementById('firstname').value == "First Name..." ){
    alert("Please Enter First Name");
    } 
    if(document.getElementById('lastname').value == "" || document.getElementById('lastname').value == "Last Name..."){
    alert("Please Enter Last Name");
    }
}


<asp:Button runat="server" ID="SearchButton" Text="Instant Search" OnClick="SearchButton_Click" OnClientClick="validation1" />

私のコードはマスター ページにありますが、これは問題になる可能性がありますか?

OnClientClick を使用して関数を呼び出すさまざまな方法を試しましたが、成功しませんでした:

4

2 に答える 2

3

関数呼び出しにかっこ (大括弧) がありません。検証関数の結果で、サーバー側のクリックが発生するかどうかを判断することもできます。

function validation1() {

if (document.getElementById('firstname').value == "" ||document.getElementById('firstname').value == "First Name..." ){
   alert("Please Enter First Name");
   return false;
} 

if(document.getElementById('lastname').value == "" || document.getElementById('lastname').value == "Last Name..."){
   alert("Please Enter Last Name");
   return false;
}

return true;
}

<asp:Button runat="server" ID="SearchButton" Text="Instant Search" OnClick="SearchButton_Click" OnClientClick="return validation1();" />

ここでの主な違いは、クライアントのクリック関数が、検証が成功したかどうかにかかわらず、実際のメソッド呼び出しが正しく宣言された場合に状態に値を返すことです。見逃すのは簡単なことです:)。

于 2013-01-08T12:35:01.787 に答える
0

これを試して

    function validation1() {

    if (document.getElementById('firstname').value == "" || document.getElementById('firstname').value == "First Name..." ){
    alert("Please Enter First Name");
    return false;
    } 
    if(document.getElementById('lastname').value == "" || document.getElementById('lastname').value == "Last Name..."){
    alert("Please Enter Last Name");
    return false;
    }
}

ここにaspxコードがあります

<asp:Button runat="server" ID="SearchButton" Text="Instant Search" OnClick="SearchButton_Click" OnClientClick="return validation1();" />
于 2013-01-08T12:42:22.837 に答える