入力フォームがあります
<input id="txtSearch" class="txtSearch" name="SearchPhraseText" type="text"http value="<%= ServiceSite.Resources.Resources.SITEMATER_ENTER_SEARCH_TERM %>" onfocus="handleSearchFocus(this)" onblur="handleSearchBlur(this)" onkeypress="if (event.keyCode == 13 ) {search();}"/>
JavaScript で $(document).ready に以下を追加すると..
if ( window.location.search.indexOf( "search" ) != -1){
$('#txtSearch').val( "<%= Session["SearchPhrase"] %>"v);
}
これが私のjavascriptの他の場所にあることを考えると
function handleSearchFocus(searchBox) {
if ($(searchBox).val() == "<%= ServiceSite.Resources.Resources.SITEMATER_ENTER_SEARCH_TERM%>") {
$(searchBox).val("");
$(searchBox).css("color", "black");
}
}
function handleSearchBlur(searchBox) {
if ($(searchBox).val() == "" ) {
$(searchBox).css("color", "gray");
$(searchBox).val("<%= ServiceSite.Resources.Resources.SITEMATER_ENTER_SEARCH_TERM%>"); //should reference config file
}
}
フォーカスとブラーを処理するこれら 2 つの関数は機能しなくなりました。入力ボックスをクリックしたり、クリックしたりしても実行されません。私がやろうとしているのは、表示する必要がある検索値がある場合は、それを表示することです。そうでない場合は、上記のぼかし/フォーカス関数のロジックに従います。