回传时清除HTML输入值

时间:2018-09-19 12:09:11

标签: javascript html asp.net vb.net input

我创建了两个输入框,并在到达最大长度时将javascript设置为自动对焦下一个框。它正常工作。但是当触发任何回发事件时,这些值变得清晰起来。我在输入框上输入runat =“ server”然后输入值清除了已解决的问题,但自动对焦脚本不起作用。请帮助我。

function movetoNext(current, nextFieldID) {
	if (current.value.length >= current.maxLength) {
		document.getElementById(nextFieldID).focus();
	}
} 
<input type="text" id="txtcard1" size="4" 
		onkeyup="movetoNext(this, 'txtcard2')" maxlength="4" />
		
<input type="text" id="txtcard2" size="4" 
		onkeyup="movetoNext(this, 'txtcard3')" maxlength="4"   /> 

3 个答案:

答案 0 :(得分:2)

根据您的问题详细信息,似乎您正在使用ASP.net。

您必须添加runat="server"才能保持控件状态,但是同时添加runat="server"时,控件将在服务器端呈现,并且控件ID也会更改。

因此,在客户端脚本上使用控件时,您需要ClientIDMode="Static"标记。

例如:

<input type="text" id="txtcard2" size="4" 
        onkeyup="movetoNext(this, 'txtcard3')" maxlength="4"  ClientIDMode="Static" runat="server"  /> 

答案 1 :(得分:1)

但是,如果您使用的是旧版本,则将无法使用,因为autofocus属性是HTML5的新增功能,HTML5仅在最近的浏览器中得到了广泛的支持

答案 2 :(得分:1)

您还可以使用Control.ClientID在客户端获取ASPX控件ID。这样,该控件将在服务器端和客户端均可用。

./traceExporter.py --fcd-input=sumoTrace.xml --ns2mobility-output=mobfile.tcl
./traceExporter.py --fcd-input=sumoTrace.xml --ns2activity-output=actfile.tcl
./traceExporter.py --fcd-input=sumoTrace.xml --ns2config-output=consfile.tcl

也不确定您的要求,但是如果要移至表单中的控件,请使用tabindex