下面的代码创建了一个搜索字段,然后将焦点事件附加到它,以便当用户单击输入字段时预设值消失。 .focus 行在控制台中有效,但在代码中无效。我怎样才能让它在代码中工作?
<script type='text/javascript'>
jQuery( document ).ready(function( $ ) {
jQuery('#site-nav').append("<div class='nav' style='width: 130px; margin-top: 15px;'><form id='site-search' method='get' action='/search'><input id='search' name='search' class='textfield' tabindex='1' type='text' style='border-radius: 10px; height: 30px;' value='SEARCH'></form></div>")
});
jQuery("#search").focus(function(){$(this).val("");});
</script>
顺便说一句,我必须拼出“jQuery”,因为我们的应用程序是这样配置的,以避免冲突 谢谢。祝福
最佳答案
移动 ready
方法中的行:
jQuery( document ).ready(function( $ ) {
jQuery('#site-nav').append("<div class='nav' style='width: 130px; margin-top: 15px;'><form id='site-search' method='get' action='/search'><input id='search' name='search' class='textfield' tabindex='1' type='text' style='border-radius: 10px; height: 30px;' value='SEARCH'></form></div>");
jQuery("#search").focus(function(){$(this).val("");});
});
编辑:
请记住 focus()
中的匿名函数如果字段获得焦点,总是会被触发。所以在这个 Action 之后它会一直是空的
关于javascript - jQuery 函数在控制台中有效,但在代码中无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25495282/