1

こんにちは、次の JavaScript と DropDownList があります。

function loadanlasstyp(ddl) {
            var ControlName = document.getElementById(ddl.id);

            if (ControlName.value == "Event") {
                window.location = "../book/event.aspx";

            }

            else if (ControlName.value == "Short Meeting") {
                window.location = "../book/shortmeeting.aspx";
            }
            return true;

        }

ドロップダウンリスト:

<asp:DropDownList ID="ddlAnlasstyp" runat="server" CssClass="ff" Height="21px" onChange="javascript:loadanlasstyp(this)"
                        TabIndex="3" Width="150px">
                        <asp:ListItem Value="Short meeting">Short</asp:ListItem>
                        <asp:ListItem Value="Event">Event</asp:ListItem>
</asp:DropDownList>

両方のページに Javascript 関数とドロップダウンリストがあるので、それらを切り替えることができます。"Shortmeeting.aspx" は既定で読み込まれます。DropDownList の [EVENT] をクリックすると、[Shortmeeting.aspx] から [Event.aspx] に切り替えることができます。「Shortmeeting.aspx」に戻りたい場合は、DropDownList の「SHORT」をクリックしますが、機能しません。

これらの 2 つのページを正しく切り替えるにはどうすればよいですか? 助けてください

4

1 に答える 1

1

値の空白を削除するだけです

値="短い会議"

     to 

値="短い"

else if (ControlName.value == "Short") {
            window.location = "../book/shortmeeting.aspx";
        }

空のスペースは、文字列の一致比較を行うときに問題を引き起こすことがあります。後で参照できるように文字列比較関数を作成できます。

function strcmp(a, b) {
if (a.toString() < b.toString()) return -1;
if (a.toString() > b.toString()) return 1;
return 0;

}

function strcmp(a, b) {
    a = a.toString(), b = b.toString();
    for (var i=0,n=Math.max(a.length, b.length); i<n && a.charAt(i) === b.charAt(i); ++i);
    if (i === n) return 0;
    return a.charAt(i) > b.charAt(i) ? -1 : 1;
}

参照リンクについては、このリンクを参照してください

于 2012-11-22T10:50:48.967 に答える