1

SSEを使い始めたばかりですが、どうすればSSEをより動的にすることができるのでしょうか。

ボックスを使用してユーザーを選択し、ユーザー名に対応する画像とテキストの変更を行っています。ここで、SSEを介してユーザーの更新を確認し、ユーザーを引き続き選択できるようにします。

ボックスを変更するときに、 eventSourceを追加しようとしました。<select>

function setSelected(elm) {
    selectedName = elm.options[elm.selectedIndex].innerHTML;

    var eSource = new EventSource("getState.php?passVar=" + selectedName);
    eSource.onmessage = function(event) {
        document.getElementById("stateText").innerHTML = event.data;
    };
}

どうすれば目標を達成できますか?

編集 これで、eventSourceが正常に追加されました(ソース自体に問題がありました)。

しかし、別のソースを追加すると、実際には2つのソースが実行されています。古いものを削除するにはどうすればよいですか?

4

1 に答える 1

1

以前のイベントソースを削除するには、close()メソッドを使用します。eSourceこれを行うには、どういうわけか周りへの参照を保持する必要があります。

于 2012-06-07T17:39:56.707 に答える