- PR -

リンク押下時にテキスト項目の入力値が取得できない。

1
投稿者投稿内容
元イノキイズム
常連さん
会議室デビュー日: 2005/12/05
投稿数: 24
投稿日時: 2005-12-07 14:18
イノキイズムと申します。

現在、ASP.NETにて携帯用の開発を行っております。
下記問題で困っております。

【問題】
モバイルページにてリンクを押下し違うFormへ遷移した場合に、入力したテキスト項目の値が取得できない。

【概要/手順】
@A.aspxに2つのForm(FormA、FormB)が存在。

AFormAのテキスト項目に値を入力し、FormAに配置しているリンクコントロールを
 クリックしFormBへ遷移させる。

 ※その際にFormAで入力していたテキスト項目の値をセッションに格納したいが
  テキスト項目に入力した値が取得できない。
  なのでFormB→FormAへ戻ってきたときに、FormAの入力内容を再現できない。


IEでは上記問題は発生せずに入力した値が取得できるのですが、
携帯のエミュレーターもしくは携帯実機でテストすると上記問題が発生します。
原因はモバイルにてJavaScriptが使用できないためなのかと思っているのですが
解決方法がわかりません。


追記:
 Commandコントロールで、Format="Link"にする方法で
 この問題を回避することも可能ではあるのですが、この方法ですと
 携帯ではリンクではなく、ボタンで表現されてしまうため
 Linkコントロールを使用しながら解決したいと考えております。


ご存知の方ご教授お願い致します。


以下は、開発環境です。
----------------------------------
.NET Framework 2.0.50727
ASP.NET 2.0
C#
Windows XP Pro
----------------------------------

以上、宜しくお願いします。
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2005-12-07 17:31
リンクコントロールでレンダリングされる アンカータグ<a> だと
ポストが出来ないのでフォームで入力した値を取得することは出来ないと思います。

JavaScript が使用できない環境でフォームから入力した値がほしいなら
Submitボタンを使うしかないのではないでしょうか。
todo
ぬし
会議室デビュー日: 2003/07/23
投稿数: 682
投稿日時: 2005-12-07 20:04
携帯のエミュレーターでHTMLを確認するとか。

サーバ側のトレース表示を確認するとか。
http://www.atmarkit.co.jp/fdotnet/dotnettips/040trace/trace.html
元イノキイズム
常連さん
会議室デビュー日: 2005/12/05
投稿数: 24
投稿日時: 2005-12-09 09:36
おはようございます。イノキイズムです。

かるあさん、todoさんご返信ありがとうごさいます。

返信遅くなり大変申し訳ありません。

ご指摘の通りリンクコントロールでレンダリングされる アンカータグ<a> だと
ポストが出来ないみたいです。

Commandコントロールを使用することにしました。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-12-10 22:54
それより、一つのページにどうやって複数の form を置いたのかが、気になる。

あ、runat=server でなければいいのか??
元イノキイズム
常連さん
会議室デビュー日: 2005/12/05
投稿数: 24
投稿日時: 2005-12-10 23:39
イノキイズムです。

引用:

Jittaさんの書き込み (2005-12-10 22:54) より:
それより、一つのページにどうやって複数の form を置いたのかが、気になる。

あ、runat=server でなければいいのか??


モバイルの場合1つのページ(hoge.aspx)に複数のformを普通に置けませんか?
Visual Studioでツールボックスのモバイル Web フォームから Formコントロールを
ドラッグ&ドロップしてやると複数のFormを作成することができましたが。。。
1

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