DOBON.NET DOBON.NETプログラミング掲示板過去ログ

[ASP.net]テキストボックスのTextChangedイベントについて

環境/言語:[環境(WindowsXP)、使用言語(VB.NET)、.NET Frameworkのバージョン(2.0)]
分類:[ASP.NET]

お世話になります。Hatsuです。

本当に困っています。
些細な事でも構いませんのでご教授お願いします。

子画面から選択した値をJavaScriptでテキストボックスに
値を挿入された時にTextChangedが発生するような事はでき
ますか?

できる、できないでも構いません。
どうか皆さんのアドバイスがいただければ幸いです。
本当に宜しくお願いします。
では、失礼します。
おはようございます。
お世話になります。Hatsuです。

書き込みがないという事はできないって事でしょうか?

宜しくお願いします。
では、失礼します。
お世話になります。

■No16775に返信(Hatsuさんの記事)
> 子画面から選択した値をJavaScriptでテキストボックスに
> 値を挿入された時にTextChangedが発生するような事はでき
> ますか?
いわゆるこちらのタイミングではなくて、
http://msdn2.microsoft.com/ja-jp/library/system.web.ui.webcontrols.textbox.textchanged.aspx
コントロールからフォーカスが外れた時でよいのなら、
AutoPostBack プロパティを True にしてやれば、TextChanged イベントが
フォーカスをはずした瞬間に発生します。

それとも、キー押下した後って事でしょうか?

でしたら、あんまり薦められた方法ではありませんが、
こんな感じでサーバー側へポストしてやって、
Load の中でそれによってポストされた事を取得する事は可能です。

■aspx
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
  <title>無題のページ</title>
  <script type="text/javascript">
  function OnKeyUp(){
    var elm;
    elm = event.srcElement
    if (elm.id == "TextBox1"){
      document.form1.test.value = "test";
      document.form1.submit();
    }
  }
  window.document.onkeyup = OnKeyUp;
  </script>
</head>
<body>
  <form id="form1" runat="server">
    <input type="hidden" name="test" value="" />
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
  </form>
</body>
</html>

■aspx.vb
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  If IsPostBack Then
    If Request.Form("test") = "test" Then
      'OnKeyUp にて呼ばれた
    End If
  End If
End Sub
おはようございます。Hatsuです。
お世話になります。

回答、ありがとうございます。なおこ(・∀・)さん。

説明不足で申し訳ありません。
値を挿入するテキストボックスは入力不可(ReadOnly)に設定しています。
ReadOnlyに設定している為、子画面から選択しない限り、テキストボックス
には値は挿入できません。

やりたい事は子画面で選択された値をテキストボックスに挿入されたと
同時に値を加工したいと思っています。

このような事を処理を実現するように、考えていますが私の力量が足りず
こちらの掲示板に書き込みをしました。

どうかお力を貸して下さい。
宜しくお願いします。
お世話になります。

■No16836に返信(Hatsuさんの記事)
> 値を挿入するテキストボックスは入力不可(ReadOnly)に設定しています。
> ReadOnlyに設定している為、子画面から選択しない限り、テキストボックス
> には値は挿入できません。
>
> やりたい事は子画面で選択された値をテキストボックスに挿入されたと
> 同時に値を加工したいと思っています。
挿入されたと同時にではなく、
挿入する前に、加工した値を挿入してやればよさそうな気がするのですけども...
お世話になります。

回答ありがとうございます。

> 挿入されたと同時にではなく、
> 挿入する前に、加工した値を挿入してやればよさそうな気がするのですけども...

子画面で選択された値と加工した値、両方使うので。
それでVB.netで加工処理ができるのかと思って色々と調べていました。
これだけ調べていても解決策がないという事はあきらめた方がいいのでしょうか?
お世話になります。

■No16848に返信(Hatsuさんの記事)
> 子画面で選択された値と加工した値、両方使うので。
では、編集されていない値と編集した値を
両方わたしてやればよいだけの話ではないのですか?

DOBON.NET | プログラミング道 | プログラミング掲示板