- - PR -
[ASP.NET] button押下時に引数をサーバへ渡すには?
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-11-10 23:52
いつもお世話になっております。
ASP.NETで開発をしていて疑問に思った点があります。 ボタンを押下した時にサーバコードを呼ばれるようにしていますが、その時に 引数としてクライアントが持っている文字列を渡したいのですが、どうやるのでしょうか。 渡す文字列は、予めJavaScirptのグローバル変数に格納しているとします。 (var hensu = "ABCD" とか。) 例えば、以下のコードがあったとします。 [Default.aspx] <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /></div> [Default.aspx.cs] protected void Button1_Click(object sender, EventArgs e) { } ボタンを押下した場合にButton1_Clickが呼ばれるのでその引数として渡したいです。 例えば、 document.getElementsByID("Button1").value = hensu のように、予めボタンのプロパティに値をセットしていれば、 ボタン押下の時にButton1_Clickの引数として値が渡っていきます。 しかしこれではボタンに表示されるテキストが変わってしまうため、見た目上でNGです。 ToolTipTextで同じような事をやってみましたが、やはり押下の時に目立つ為NGです。 他に良いプロパティが無いかと思って探してみたところ、 「CommandArgument」プロパティなら文字列がセット出来るかと思いました。 が、JavaScriptから値を入れる方法が分かりません。 どなたかご存知ありませんでしょうか。 もしくは同等の処理を行う方法はありますでしょうか。 |
|
投稿日時: 2008-11-10 23:55
普通にHidden使えばいいだけじゃ?
|
|
投稿日時: 2008-11-11 07:06
このサンプルが参考になるかと?
JavaScriptで設定した値をサーバーサイドに渡す(HiddenText使用) http://asp35.com/samples/081107VB-1.aspx JavaScriptで設定した値をサーバーサイトに渡す(__doPostBack使用) http://asp35.com/samples/081107VB-2.aspx [View Code]ボタンをクリックするとソースコードが表示されます。 _________________ ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集 |
|
投稿日時: 2008-11-11 09:59
ぴあちゃん様>
Hidden。。。ですか?調べてみます。 Access様> HiddenText使用のサンプルを実装してみましたが サンプルとおりにボタンのOnClientClick属性にJavaScriptの関数を 指定しても呼ばれませんでした。 ソースの16〜19行目を見ると「jquery」という文字列が見えるので このライブラリを使用する必要があるのでしょうか。 今はAjax ExtensionとAjax Control ToolKitしか使っていません。 |
|
投稿日時: 2008-11-11 10:30
ACCESS様>
失礼しました。サンプルが動きました。 原因はボタンのEnableの初期値をFALSEにしていた為でした。 画面上の操作でJavaScriptを使ってボタンのEnableをtrueに(厳密にはdisableをfalseに) 切り替えたはずなのですが・・・。 とにかくありがとうございました。希望の処理が作れそうです。 |
1