- PR -

ボタンコントロール内テキストに「””ブランク」を入れると・・・

1
投稿者投稿内容
masatok2
ベテラン
会議室デビュー日: 2003/10/05
投稿数: 81
投稿日時: 2004-08-25 18:31
ASP.NET C# にてWEBフォームの開発中です。

条件によって「ボタンコントロールのテキスト」に文字を入れたり、
「””ブランク」を入れたりしたいのですが、ブランクをセットすると

【クエリ送信】と言う文字がいきなり出始め困って居ます。
デバッグで追っかけても「【クエリ送信】」なる文字が入る場所は確認されません。

例)1 をセット→ 正常に「1」 とボタンに出力
  "" をセット→【クエリ送信】とボタンに出力

お手数で御座いますがご教授下さい
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2004-08-25 18:52
masatok2さん、こんばんは。

引用:

  "" をセット→【クエリ送信】とボタンに出力


フォームデザイナが出過ぎたマネをしてくれる、という話でしょうか。
半角スペース1個入れて逃げるとか。
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2004-08-25 18:53
引用:

masatok2さんの書き込み (2004-08-25 18:31) より:
【クエリ送信】と言う文字がいきなり出始め困って居ます。
デバッグで追っかけても「【クエリ送信】」なる文字が入る場所は確認されません。

例)1 をセット→ 正常に「1」 とボタンに出力
  "" をセット→【クエリ送信】とボタンに出力


ページが表示された後で、「ソースの表示」をしてみてください。
この文字は多分IEが出してます。
ya
大ベテラン
会議室デビュー日: 2002/05/03
投稿数: 212
投稿日時: 2004-08-25 18:56
引用:
【クエリ送信】と言う文字がいきなり出始め


これは、IEでは
コード:
<input type="submit" name="submit" id="submit" />


といったようにvalue attibuteがない場合にでる動作なのでおそらくサーバー側で出力したものではないです(出力されたHTMLのソースを確認してみてください)。

で、これから推測するに、valueが出力されていないといった現象だと思うんですが、

コード:
<%@ Page language="C#" %>

<script runat="server">
void Page_Load(object sender, EventArgs e)
{
button1.Text = string.Empty;
}
</script>
<html>
<head>
</head>
<body>
<form runat="server">
<asp:Button id="button1" Text="aaa" runat="server" />
</form>
</body>
</html>



こういうコードを書いてみましたが、うちの環境では再現できません(value=""がきちんと出力されている)。再現できるコードをもう少し詳しく教えていただけますでしょうか。


[ メッセージ編集済み 編集者: ya 編集日時 2004-08-25 19:03 ]
masatok2
ベテラン
会議室デビュー日: 2003/10/05
投稿数: 81
投稿日時: 2004-08-26 10:42
みなさん有り難う御座います。IEがらみのHTML関連と言う事の様ですね。

画面表示後「ソース」を表示したところ「クエリ送信」の文字は確認出来ませんでした。

実際に問題になっているソースは恐ろしいほど単純なのですが。
if ( day == 1)
{
this.Button1.Text = i.ToString();

}else
{
this.Button1.Text = "";
}
上記の物です、超かんたんなカレンダーを作成する要件でコーディングしました。

一応ブランクだと不的確な表示「クエリ送信」が出てしまうので
本件では「-」(ダミー文字)を入れてひとまずは落ち着きました。
(只今後同じ様な現象が出た場合避けては通れないと言う話も有ります。)
masatok2
ベテラン
会議室デビュー日: 2003/10/05
投稿数: 81
投稿日時: 2004-08-26 10:45
訂正です。

「"-"」→×
「" "」(半角スペース)を入れて一応要件は達しました。

有り難う御座いました。
kikka
会議室デビュー日: 2004/04/26
投稿数: 5
お住まい・勤務地: 大阪市
投稿日時: 2004-09-08 16:30
皆様こんにちは
あっ、わたしはもこの問題に直面したことがあります。
Enableをfalseにしても、でてくるんですよね。”クエリ送信”って文字が・・・
私がこの問題を解決しようとして、テキストに半角スペースを入れたのですが、
半角スペースの場合、テキストに文字が入るので半角スペース文コントロールの幅
がとられるという弊害があったようなきがします。
出力すると半角スペース幅のボタンが出たような気がします。
で、私はこれがいやだったので、あくまで空白にこだわったんですが、
ボタンテキストのフォントカラーをTransparentにして透明にしたか、ボタンのBackColorと同じ色にして見た目わからないようにしました。
小手先なものになりますが、見た目なんだからいいやと割り切りました。
1

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