- - PR -
AJAXによるドロップダウンリストへの値セットについて
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-08-10 21:05
>javascriptからsession変数に値を書き込む
ええと。 サーバサイド・クライアントサイドの違いは分かりますか? | ||||||||||||
|
投稿日時: 2006-08-11 08:40
mioさんおはようございます。
クライアントサイドとはサーバーから送られてきて クライアント上で動いているもので サーバーサイドとはサーバー上で稼動しているもので 双方でやりとりをしているくらいのイメージです。 今回非同期的にクライアントからドロップダウンに 値をセットしてそれが消えないようにするために クライアントがドロップダウンにセットした値を sessionに退避したいのですがjavascriptはクラ イアントサイドだからサーバー上にあるsession には直接書き込み出来ないということでしょうか? 不勉強で申し訳ありません。 宜しくお願いします。 | ||||||||||||
|
投稿日時: 2006-08-13 21:28
クライアント(ブラウザ)で動作する JavaScript から、 サーバ上の Session変数に直接値を書き込むことはできません。
これはサーバ側のコードとして実行されます。 出力されたHTMLを見ればわかりますが、 HTMLとして出力されないのでクライアントスクリプトとして 動作しようがありません。 なので、前回選択した値を元にクライアント側でリストを再取得したり、 hidden や mio さんの言われるように cookie に値を仕込ませて javascript で再度リストを取得しないとだめだと思います。 | ||||||||||||
|
投稿日時: 2006-08-14 09:41
書き込みできない理由はそのとおりです。 が、元々私が書こうとしていたのは、その前の段階の話です。 ドロップダウンに追加するべき項目を、AJAXで取得しに行く、つまりサーバ側の処理が走っていますよね。 このサーバ側の処理のついでに、セッションに値を保持すれば良いのではないですか? ドロップダウンに追加した後である必要はなく、その前でも良いように思うのですが。 | ||||||||||||
|
投稿日時: 2006-08-14 20:10
こんばんは
mioさん かるあさんお返事ありがとうございました。 不勉強のため何度も返答させてしまって申し訳ないです。 でもお二人のいっていることが何とか理解できて なんとかなりそうです。 本にありがとうございます。 ちなみに Ajavxなのですが 最初は AJAX.NET.dll というのをネットでダウンロードしてきて使用して いたのですが、このDLLを使用するとなぜだか同じ コードなのにうまくいったりいかなかったりします。 しょうがないので、他のページでみつけたリピータ コントロールにXML形式で出力しjavascriptに渡す やり方でやっています。 <asp:Repeater id="data" runat="Server"> <HeaderTemplate> <Result> </HeaderTemplate> <ItemTemplate> <Data> <PostNum> <%# DataBinder.Eval(Container.DataItem, "syohin_cd") %> </PostNum> <Address> <%# DataBinder.Eval(Container.DataItem, "syohin_name") %> </Address> </Data> </ItemTemplate> <FooterTemplate> </Result> </FooterTemplate> </asp:Repeater> (この場合javascriptで受け取った際に前後にtabみたい なものがつきますが) AJAX.NET.DLLの解決方法か、他にもASP.NETの用のAJAXの いいツールがあれば教えて下さい。(出来ればでいいので) いろいろとありがとうございました。 | ||||||||||||
|
投稿日時: 2006-08-14 20:35
うまくいかないときは、どのようにうまくいかないのでしょうか? コンパイルエラーが出る?例外が発生する? AJAX.Net に関しては Access さんのホームページにサンプルが多くありますね http://www.friendlysw.com/aspnet/aspnet.asp
もう一つの AJAX 実装である Atlas はいまだ CTP ですが、 Atlas に関しても調べてみてはどうでしょうか [ メッセージ編集済み 編集者: かるあ 編集日時 2006-08-14 20:38 ] | ||||||||||||
|
投稿日時: 2006-08-18 19:30
かるあさん大変返事が送れて申し訳ありません。
AJAX.NET.DLLでうまくいかないというのは基本的に は問題なく動作するのですが、なぜかあるとき突然 ブラウザーの左下にページのエラーが発生しそこか らはまったく機能しなくなります。 ※これは自分が作成したのもそうなのですが Microsoftからダウンロードしてきたサンプルでも 同じような現象がおこります。 http://www.microsoft.com/japan/msdn/net/aspnet/ASPNetSpicedAjax.aspx ありがとうございました。 |