2017-12-23 10 views
-1

検索エンジンを作成しています。私の検索エンジンでは、ユーザーが数値フィールドに最小値と最大値を指定できるようにします。私はデフォルトのテキスト "From"と4つのフィールドにデフォルトのテキスト "To"を持つ4つの入力テキストフィールドを持っています。Jqueryは、テキストが「From」または「To」の場合、テキストを削除します。

私はこれをやろうとしています: "From"または "To"にフォーカスを持っているフィールドのテキストが空白になるようにテキスト値を設定します。

<script> 
$(document).ready(function(){ 
    $(".recipe_search_text").focus(); 
     $(".recipe_search_text").val(""); 
    }); 
}); 
</script> 


<p><b>Max</b></p> 

<p>Calories<br /> 
<input type="text" name="number_serving_calories_from" value="From" size="5" class="recipe_search_text" /> 
<input type="text" name="number_serving_calories_to" value="To" size="5" class="recipe_search_text" /> 
<input type="submit" value="Search" class="btn btn_default" /> 
</p> 

<p>Calories<br /> 
<input type="text" name="number_serving_fat_from" value="From" size="5" class="recipe_search_text" /> 
<input type="text" name="number_serving_fat_to" value="To" size="5" class="recipe_search_text" /> 
<input type="submit" value="Search" class="btn btn_default" /> 
</p> 

<p>Carbs<br /> 
<input type="text" name="number_serving_carbs_from" value="From" size="5" class="recipe_search_text" /> 
<input type="text" name="number_serving_carbs_to" value="To" size="5" class="recipe_search_text" /> 
<input type="submit" value="Search" class="btn btn_default" /> 
</p> 

<p>Proteins<br /> 
<input type="text" name="number_serving_proteins_from" value="From" size="5" class="recipe_search_text" /> 
<input type="text" name="number_serving_proteins_to" value="To" size="5" class="recipe_search_text" /> 
<input type="submit" value="Search" class="btn btn_default" /> 
</p> 
+1

[placeholder](https://www.w3schools.com/tags/att_input_placeholder.asp)を使用してみませんか?フィールドに入力を開始すると、プレースホルダテキストが消えます。 – Mikey

+0

こんにちは、おそらく、フォーカスの近くにカッコがありません。 –

+0

'.focus()'の引数として関数を渡す必要があります。どのjQueryチュートリアルでも、イベントハンドラをバインドするための適切な構文を示す必要があります。 – Barmar

答えて

0

$(「recipe_search_text」)は、8つの入力のすべての要素を選択し、我々だけでフォーカスしながら、現在の1の値を変更してみてください。とfocusInのコールバック匿名関数では、我々は唯一の現在の要素を更新する必要があるので、 ( "this"はキーワードであり、現在の要素を意味します)、8つすべてを更新することはできません。 ところで、私たちはすべての値をJqueryの "e​​ach"関数で更新する必要があります。私の素人の説明に申し訳ありません、私はJavascriptに精通していない。

<script> 
$(document).ready(function(){ 
    $(".recipe_search_text").focusin(
     function() { 
      $(this).val(""); 
     } 
    ); 
}); 
</script> 
+0

コードの回答のみが元の問題を解決するかもしれませんが、あなたがやったことのいくつかの説明は、他の人がどのように動作し、将来同様の問題を解決するかを理解するのに役立ちます。 –

+0

あなたの提案に感謝@NigelRen。私はそれが基本的な質問だと思っていて、スクリプトは非常にはっきりしているので、私は説明しませんでした。 –

関連する問題