当用户点击它时,我使用这个JS来清除文本框,所以这个工作正常并清除页面中的所有文本框,我想只清除搜索文本框 搜索.. 我怎么能这样做,不应该清除其他文本框,只有当我点击它时才能清除这个搜索文本框。
<script type="text/javascript">
$(function () {
$('input[type=text]').focus(function () {
$(this).val('')
});
});
</script>
另一个问题。
我有一个带有少量文本框的面板,如何将焦点设置在特定的文本框上
<asp:TextBox ID="txt_Name" runat="server" />
答案 0 :(得分:2)
只需通过它的ID或其他属性选择TextBox
e.g。
<asp:TextBox id="txt_Search" runat="server" />
然后通过它的唯一客户端ID选择TextBox
。
$('#<%=(txt_Search.ClientID)%>').focus(function() { $(this).val(''); });
答案 1 :(得分:2)
明确值 - $('#yourTextBox').val('');
设定焦点 - $('#yourTextBox').focus();
答案 2 :(得分:1)
我认为使用id
值不是最佳选择,因为.net
可能会更改运行时中的id
值
eg MainContent_txt_Name
你可以做这样的事情
<asp:TextBox ID="txt_Name" CssClass="myText" runat="server" />
<script type="text/javascript">
$(document).ready(function () {
$('.myText').click(function() {
$(this).val('')
});
});
</script>
答案 3 :(得分:0)
代替$('input[type=text]')
执行$('search-box-id')
答案 4 :(得分:0)
你需要的只是为搜索框指定id,尝试检查你的元素,或者查看源代码以获得正确的id,因为id是由ASP.NET Web表单生成的,或者你可以添加像rel这样的自定义属性= “搜索框”
所以这是javascript
$(document).ready(function() {
//for id
$('#id_of_text_box').focus(function() { $(this).val(''););
//for rel attribute
$('input[rel="search-box"]').focus(function() {$(this).val(''););
});
答案 5 :(得分:0)
我会使用HTML5的defaultvalue属性回到这个jquery方法:
答案 6 :(得分:0)
另一个选项,沿着略有不同的路线,使用JQuery文本框水印组件。 这已经创建,只是为了满足您的要求,并且当他们点击文本框时会重新填充,但后端将永远不会看到该值。除了自己动手之外的麻烦!