1

ryanfait.comカスタムフォーム要素を使用して、.netWebアプリケーションのドロップダウンリストの外観を変更しています。ドロップダウンリストの.netポストバックを除いて、すべて正常に機能します。カスタム作業要素のjavascriptコードを見て、onchangeイベントが上書きされていることに気づきました。

    if(!inputs[a].getAttribute("disabled")) {
    inputs[a].onchange = Custom.choose;
    } else {
    inputs[a].previousSibling.className = inputs[a].previousSibling.className += " disabled";
    }

上記のコードをコメントアウトすると、自動ポストバックは機能しますが、自動ポストバックを必要としない他のドロップダウンリストの場合、入力値は変更されません。両方のシナリオでこれを機能させる方法はありますか?ryanfait.comで、彼は次のように述べています。

onChangeおよびその他のJavaScriptイベントこのスクリプトは、JavaScriptのonChangeおよびその他のイベントを利用します。これらのイベントは1回しか使用できないため、イベントに関数を追加する場合は、スクリプト内から呼び出す必要があります。

しかし、どういうわけか自動ポストバックイベントをトリガーできるかどうかはわかりませんか?

どんな助けでも大歓迎です!

4

1 に答える 1

0

これを行う最も簡単な方法は、自動ポストバックを使用して標準の asp:dropdownlist を追加し、ページをプレビューしてからソースを表示し、HTML ソースでリストを見つけて onChange プロパティをコピーすることです。これは、ページをポストバックするためにクライアント側を呼び出す必要があるものです。

例えば。

onchange="javascript:setTimeout('__doPostBack(\'ddlHolidayType\',\'\')', 0)"
于 2015-06-25T10:31:00.613 に答える