- PR -

JavaScriptでセットした値がSubmitするとなくなる

投稿者投稿内容
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2004-03-01 13:20
引用:

Jittaさんの書き込み (2004-03-01 13:10) より:
引用:

msoさんの書き込み (2004-02-27 16:24) より:

<a href="javascript:void(0)" onclick="javascript:test_a('a','b','c')";return false;">click</a><br>


なんか、おかしくないですか?転記ミスでしょうか?

onclick="javascript:test_a('a', 'b', 'c');return false;"

ダブルクォーテーションの位置
「false」なの?



すいません。転記ミスです。
コピペのあとで直接修正したときにミスをしたようです。
ご指摘ありがとうございます。
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2004-03-01 14:17
未だに同じところでつまっているmsoです。

ASP.NETの<input type="hidden">にvalue="test"とvalueを
設定後に実行してみました。

画面でアンカータグをクリックし、 alertでデータが変わっていることを
確認(alertでは"hogehoge"でした。)したのち、
BreakさせたところでRequest.Paramsでデータで何を受けとっているかを
確認したところ"test"になっていました。

JavaScriptで値を設定しても、何かおまじないのようなことを
しないといけないでしょうか?
ほむら
ぬし
会議室デビュー日: 2003/02/28
投稿数: 583
お住まい・勤務地: 東京都
投稿日時: 2004-03-01 14:25
ほむらです。
--------
mso氏へ
引用:

GETしたときにはすでにデータがセットされていません。
なので、送るときに何かおかしい現象が発生しているみたいです。


データがセットされていないというのはどっちですか?
(bが問題のhiddenデータです)
http://url?a=A&b=
それとも。
http://url?a=A


引用:

あと、質問です。
”disabledを設定”ってのは何についてでしょうか?
お恥ずかしいですが、何をdisabledに設定しているのかわかりません。


これは勘違いですね。hiddenでは普通にdisabledは使用しませんね。
ちなみに、disabledというのは
<input type="text" value="" size="" maxlength="" disabled="disabled">
のように書いてデータを送りたくない場合に使用します。

readonlyとにていますが、リクエストデータとして含まれないことが特徴です。

#hiddenの要素は動的に作成はしてませんよね?

#おもわず、ソースコードにらめっこしてしまいましたがこれは動くんでしたね^^;;;
#もう、こうなったら同じページをコピペなしで転写したほうが早い?(笑
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2004-03-01 14:50
長々とお付き合いくださりありがとうございます。
msoです。

引用:

ほむらさんの書き込み (2004-03-01 14:25) より:
ほむらです。
--------
データがセットされていないというのはどっちですか?
(bが問題のhiddenデータです)
http://url?a=A&b=
それとも。
http://url?a=A



http://url?a=A&b=
になっています。
bというものはあるけども、値が入っていません。



引用:

これは勘違いですね。hiddenでは普通にdisabledは使用しませんね。
ちなみに、disabledというのは
<input type="text" value="" size="" maxlength="" disabled="disabled">
のように書いてデータを送りたくない場合に使用します。

readonlyとにていますが、リクエストデータとして含まれないことが特徴です。



ああ、なるほど。
disabledは設定していません。

引用:

#hiddenの要素は動的に作成はしてませんよね?



動的には作成しておらず、HTMLコントロールとして配置してあります。


引用:


#おもわず、ソースコードにらめっこしてしまいましたがこれは動くんでしたね^^;;;
#もう、こうなったら同じページをコピペなしで転写したほうが早い?(笑




んー、コピペでボンってのが私も楽でいいですし、
回答していただいている皆様にもいいのはわかるのですが、
やっぱりちょっとそれはできないんですよ・・・すいません。

個人的になぜか初期化されているのが気になっています。
ほかの項目はしっかりとデータを持ってきています。
アンカータグから起動した、JavaScriptで値をセットした
ところだけがうまくデータをもってこれていません。

taro
ぬし
会議室デビュー日: 2003/10/20
投稿数: 316
投稿日時: 2004-03-01 15:06
こんにちは。

全く的外れだったら申し訳ないのですが・・・。
msoさんの最初に提示されたスクリプトが仕様を満たしているのでしたら、
これをタグの位置(入れ子の関係)を変えないように改変すれば
動くのではないでしょうか?
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2004-03-01 15:22
msoです。

引用:

taroさんの書き込み (2004-03-01 15:06) より:
こんにちは。

全く的外れだったら申し訳ないのですが・・・。
msoさんの最初に提示されたスクリプトが仕様を満たしているのでしたら、
これをタグの位置(入れ子の関係)を変えないように改変すれば
動くのではないでしょうか?




提案ありがとうございます。
ただ、テスト用に書いてみただけなので仕様は満たしていません。
同じような動作をするように作っただけです。



あと、先ほど私はうそをつきました。
大変申し訳ありません。
再度確認をしていたのですが、
ほむら様からの確認事項のところですが、
実際にはURLは http://url?a=A  というようになっていました。
デバッガでRequest.Paramsにb=""というような内容がでてきていた
ため勝手に思い込みでした。

誤った情報を書き込みました。申し訳ありません。
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet04/aspnet04_02.html
を読んでいたら自分の勘違いに気がつきました。






Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-03-01 15:29
引用:

msoさんの書き込み (2004-02-27 16:24) より:

そこで、JavaScriptをつかいinput type="hidden"に
値を渡し、そのままSubmit()させるとhiddenに
格納したはずの値がRequest.Paramsで取得することが
できません。取得しようとすると""になっていました。


 そのコントロールを「サーバコントロールとして実行」にすると、サーバサイドのプログラムで値はセットされますか?
#このスレッドで初めてRequest.Paramsに全ての値が入ってくることを知った
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2004-03-01 15:44
msoです。
引用:

Jittaさんの書き込み (2004-03-01 15:29) より:
 そのコントロールを「サーバコントロールとして実行」にすると、サーバサイドのプログラムで値はセットされますか?
#このスレッドで初めてRequest.Paramsに全ての値が入ってくることを知った



すいませんが教えてください。
大変申し訳ありませんが、「サーバコントロールとして実行」は
どうやってやるのでしょうか?
VS2002の中をあちこち探してみたのですが、
見つけることが出来ませんでした。

スキルアップ/キャリアアップ(JOB@IT)