2

私はこれらのテキストボックスを持っています:

<asp:Label ID="lbllastname" runat="server" Text="LastName" 
     CssClass="labels" />&nbsp;
<asp:TextBox ID="txtlastname" runat="server" CssClass="texts"
     onkeyup="firstElementPress(event);" TabIndex="3" />
<br />
<asp:Label ID="lblfirstname" runat="server" Text="FirstName" 
     CssClass="labels" />&nbsp;
<asp:TextBox ID="txtfirstname" runat="server" CssClass="texts"
      onkeyup="firstElementPress(event);" TabIndex="4" />
<br />
<asp:Label ID="lblmi" runat="server" Text="MI" CssClass="labels" />&nbsp;
<asp:TextBox ID="txtmi" runat="server" CssClass="texts"
      onkeyup="firstElementPress(event);" TabIndex="5" />
<br />
<asp:Label ID="lblext" runat="server" Text="Suffix" CssClass="labels" />&nbsp;
<asp:TextBox ID="txtext" runat="server" CssClass="texts"
     onkeyup="firstElementPress(event);" TabIndex="6" />

CSS:

.labels
{
    font: bold 10pt Calibri;
    color: Black;
}

.texts
{
    border-color: Black;
    border-width: thin;
    height: 16px;
    font: 10pt Calibri;
}

それらは問題ありませんが、名前が既に存在するときにユーザーが JavaScript アラートに遭遇した場合、これらのテキストボックスは高さが失われ、境界線が太くなります。なぜこれが起こっているのか分かりません。

アラートのコードは次のとおりです。

Response.Write("<script>alert('The name you specified already exists!');
                </script>");

なぜこうなった?onkeyupイベントのJavaScriptとは関係ないと思います。それともそうですか?IDK。さまざまなコントロールに焦点を当てるだけです。

いずれにせよ、ここにそのためのJavascriptがあります:

function firstElementPress(e) {
    if (e.keyCode == 27) {
        document.getElementById('fuso').focus();
    }
    if (e.keyCode == 17) {
        document.getElementById('txtso').focus();
    }
}

なぜこれが起こるのか誰かが私に説明してくれることを望みます. ありがとう!

4

1 に答える 1

1

これを試して... :

以下のようなプロンプトメッセージ:

 Page.ClientScript.RegisterStartupScript(this.GetType(), "alertmesg", "<script language=javascript> alert('The name you specified already exists!');</script>");

に対して

Response.Write("<script>alert('The name you specified already exists!');</script>");

ありがとうございました...

于 2013-10-24T08:57:42.923 に答える