C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.13135 の関連記事表示

<< 0 >>
■13135  datagridの&nbsp;
□投稿者/ まこと -(2008/01/24(Thu) 23:36:10)

    分類:[ASP.NET (VB)] 

    こんにちは、はじめて質問させていただきます。

    VB.NET2003でWebアプリケーションを作成しています。
    OracleDBから取得したデータ結果をDataGridに入れて
    Datagrid.Item(?).Cells.item(?).Text
    これで値を取り出しているのですが、
    このときNullを取得した項目には、HTMLの半角空白("&nbsp;")が表示されます。
    そのままWeb画面のテキストボックスに反映させたときに、
    そのままの文言が表示されてしまいます。
    これをなくすいい解決方法があればご教授ください。

    いろいろ調べてみて、このような技を使っているのもあったのですが、↓
    If 〜item.text = "&nbsp;" then
    TX_TEXT.text = ""
    End if
    どうもしっくりこなくて。。。

    宜しくお願いします。
親記事 /過去ログ28より / 関連記事表示
削除チェック/

■13140  Re[1]: datagridの&nbsp;
□投稿者/ mあ@反省中 -(2008/01/25(Fri) 00:16:05)
    No13135 (まこと さん) に返信
    > このときNullを取得した項目には、HTMLの半角空白("&nbsp;")が表示されます。

    ?null はブランク(長さ0の文字列 or ...)じゃないの?

    SQLで、
    Select
    Case xxx is null then ' ' else xxx end YYY
    From
    Table1
    とか やってるだけじゃないのかな?
    又は、
    Coalesce(xxx,' ') As YYY

    とか。。。

    どこで半角空白が入るのか追ってみた方がいいのでは?

記事No.13135 のレス /過去ログ28より / 関連記事表示
削除チェック/

■13154  Re[2]: datagridの&nbsp;
□投稿者/ ぽぴ王子 -(2008/01/25(Fri) 06:37:42)
>
    No13140 (mあ@反省中 さん) に返信
    
    > ■No13135 (まこと さん) に返信
    >>このときNullを取得した項目には、HTMLの半角空白("&nbsp;")が表示されます。 
    > 
    > ?null はブランク(長さ0の文字列 or ...)じゃないの?
    
    これですが、DataGrid が &nbsp; を入れているはずです。
    空文字列(Null)をセットした場合は、そのままだとタグ上で
    
    <table>
      <tr>
        <td></td>
      </tr>
    </table>
    
    のような感じになるので、<td></td> を <td>&nbsp;</td> に変換しているのだと
    思われます。
    それを DataGrid から値を取り出すと、スレ主さんのようなことになるのではないかと。
    
    基本的には元のテーブルから取り出すのが一番手っ取り早いですが、そうもいかない
    場合は七曜さんの書かれている HtmlDecode メソッドを使うのが素直だと思います。
    &nbsp; 以外に &lt; とか &gt; とか &amp; なんかもあるかもしれないし。
記事No.13135 のレス /過去ログ28より / 関連記事表示
削除チェック/

■13138  Re[1]: datagridの&nbsp;
□投稿者/ 七曜 -(2008/01/25(Fri) 00:07:44)
    No13135 (まこと さん) に返信

    環境が無いのでNullが&nbsp;となっている仕組みはちょっとわかりませんが
    対象要素がHTMLEncodeされているということであれば、HTMLDecodeしてあげれば良いかと思います。

    [HttpServerUtility.HtmlDecode メソッド (String)]
    http://msdn2.microsoft.com/ja-jp/library/hwzhtkke(VS.80).aspx

    ついでに書いておきますと、&nbsp;は半角空白になりますので、Trimも実行する必要があるかもしれませんね。
記事No.13135 のレス /過去ログ28より / 関連記事表示
削除チェック/

■13155  Re[2]: datagridの&nbsp;
□投稿者/ まこと -(2008/01/25(Fri) 09:28:34)
    スレ主です。
    ぽぴ王子様のおっしゃられるとおり、&nbsp; が入るのはDataGridの仕様みたいです。
    HttpServerUtility.HtmlDecode メソッドを使用する関数を作って、
    逐一通していこうかと思います。

    みなさまご丁寧にありがとうございました。
記事No.13135 のレス / END /過去ログ28より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -