入力ボックスにデフォルトのテキストがあるフォームを書いています。ユーザーが入力ボックスをクリックすると、onfocus がどのテキストを処理するかを明確にする必要があります。ただし、ユーザーが 140 文字を超えて入力した場合もユーザーに警告しています。しかし、アラートの後、テキストは再び null に変わります。これを処理するために、まだ機能していないフラグを設定しようとしました。
これが私のコードです:
<form method="post">
<input
type="text"
maxlength="140"
name="question"
value=" What's your Question?"
onfocus="this.value = '';
this.style.color = 'black';
this.style.fontStyle = 'normal';
if(refreshFlag) {
this.value = askQues;
}"
onkeypress="if (this.value.length == this.getAttribute('maxlength')) {
var askQues = this.value;
var refreshFlag = true;
alert('Please use less than 140 characters to ask question');
this.value = askQues;
}"
style="color: black; font-style: normal;"
/>
</form>
コードも Jsfiddle にあります: http://jsfiddle.net/4gQSc/