解決済

clip!clip!
Ads By Google

コメントの名前欄に初期設定した文字が一瞬だけ表示された後に消えてしまう問題。

プーケットのデザインを使用しています。

<input id="author" name="author" value="名無し">
と設定していますが、一瞬だけ「名無し」と表示された後に消えてしまいます。

以前にコチラに同様の質問があったようですが、回答が得られずにお蔵入りになっているようです。


同様の状態を修正したという方はいらっしゃいませんでしょうか。よろしくお願いします。

2006-03-31 10:18の質問
デザイン  knowledge  AU  コメント  名前  ID      
デザイン
デザイン の情報はこちらです
www.span.ne.jp
この質問と回答を読んで役に立った場合は「役に立つ質問」に投票してください。投票が多い質問は、役に立つ質問一覧に掲載され、より多くの人に見てもらうことができます。

回答(2)

1.

2006-03-31 12:54:54ベスト


以前の回答ですが、宜しければ参考にどうぞ^^

ありがとうございます。コチラの方法で解決できました。

2.

2006-03-31 13:33:17

まず、最初に出現するこの部分は設定しても意味ないです。

   document.write('<input id="author" name="author" />');

次の行はJavascriptが無効のクライアント用なので下記のように指定します。

   <Else><input id="author" name="author" value="名無しさん" />

そして、問題の箇所は、ページの最下部あたりにある、

   <script type="text/javascript" language="javascript">
   <!--
   loadCommentAuthor(document.comment_form);
   //-->
   </script>

この部分です。
最初にvalueを設定しても、この部分で上書きされてしまいます。
対策は、この直後に下記のコードを追加します。

   obj = document.getElementById("author");
   if(obj.value==""){ obj.value = "名無しさん"; }
   

これは、valueがすでに存在していたらそのままで、未記入なら「名無しさん」とするものです。

下記のように挿入して下さい。


   <script type="text/javascript" language="javascript">
   <!--
   loadCommentAuthor(document.comment_form);
   obj = document.getElementById("author");
   if(obj.value==""){ obj.value = "名無しさん"; }
   //-->
   </script>


下記のブログでテストしました。

現在もそのままですので、動作状況などチェックして下さい。
本文を「テスト投稿」として頂ければ投稿を表示せずに削除します。
回答レベル : 回答
Ads By Google

コメント

まだコメントがありません

トラックバック(2)

トラックバックURL: