想知道这是否可行,目前使用它来点击'清除'按钮,然后它清除UPIN;
Protected Sub clear(ByVal Sender As Object, ByVal e As System.EventArgs)
UPIN.Text=String.Empty
End Sub
但是我希望它能清楚地关注哪个文本框!例如;
focusedstring.Text=String.Empty
如果没有大量的JS或其他任何东西,这又有可能吗?
答案 0 :(得分:3)
您应该在客户端上进行操作(编辑:根据MightyLampshade的建议,您可以找到1000个示例here),您不需要往返于服务器的往返服务。如果你有一个清晰的按钮:
$("#clear").click(function() {
$(".can-be-cleared").val("");
});
请注意,这将清除所有带有can-be-cleared
类的元素(我假设您可能不希望清除每个输入而是一个特定的集合,如果不是这样,只需将其替换为input[type=text]
) 。当您单击标识为clear
的元素时。
如果每个“清除”按钮必须与单个特定文本框绑定,则必须重复它们(因为当您单击按钮时,文本框将不再被聚焦)。作为替代方案,您可以记住最后关注的文本框。让我们看看两者:
<input type="text" id="textbox1"/>
<button class="clear-button" data-textbox="textbox1">clear</button>
JavaScript的目的是:
$(".clear-button").click(function() {
$("#"+$(this).data("textbox")).val("");
});
更简单的替代(如果您没有任何其他特殊要求,我更喜欢这种情况)可能是为了跟踪最后关注的文本框:
var lastFocused = undefined;
$("input[type=text]").focus(function () {
lastFocused = $(this);
});
$("#clear-field").click(function () {
if (lastFocused !== undefined) {
lastFocused.val("");
}
});
当然不要忘记将$("#clear-field")
与您用于清除按钮的正确ID匹配,在这种情况下我假设:
<button id="clear-field">Clear</button>
无论如何,如果您确实需要某些服务器端处理(由于任何其他原因),生成事件的TextBox
位于sender
参数中:
Dim textbox As TextBox = DirectCast(sender, TextBox)
textbox.Text = String.Empty
答案 1 :(得分:-1)
$('input[type=text]').focus(function() {
$(this).val('');
});
它简单易用Jquery ..不需要编写大量的代码行。
<强>更新强>
如果您想点击按钮,请点击:
$("#Clear").click(function(){
$('input[type=text]').focus(function() {
$(this).val('');
});
});