gpt4 book ai didi

c# - 关注 TextBox 正在使用 C# .net 触发 PageLoad

转载 作者:行者123 更新时间:2023-11-30 18:41:56 24 4
gpt4 key购买 nike

我有一个函数,当按下回车键时,通过表单上的 JS 将焦点设置到下一个字段:

function pressEnter(obj, e) {
var key = e.keyCode ? e.keyCode : e.which;
if (key === 13) {
var total = document.forms[0].elements.length;
for (var i = 0; i < total; i++) {
if (obj.id == document.forms[0].elements[i].id) {
index = i + 1;
while ((document.forms[0].elements[index].type == "hidden" || document.forms[0].elements[index].nodeName == "FIELDSET" || document.forms[0].elements[index].disabled == true)) {
index++;
if (document.forms[0].elements[index] == null)
return;
}
$('#' + document.forms[0].elements[index].id).focus();
break;
}
}
}
}

在 BODY 标签中,我有以下脚本:onkeypress = "var key = event.keyCode? event.keyCode: e.which; return (key!= 13);",以避免在 [Enter] 时出现被按下

正常运行,如果我设置 [TextBox1 autoPostBack=false] [TextBox2 autoPostBack=false]。输入TextBox1,[回车],TextBox2获得焦点,触发body的onkeypress事件。

很好。

问题来了

如果我设置[TextBox1 autoPostBack=false] [TextBox2 autoPostBack=true] 当textBox2获得焦点时,刷新页面,执行post,不触发body的onkeypress事件。它没有在 TextBox2 中键入任何内容。我希望 AutoPostBack = true 的 TextBox 在输入值并运行 onBlur 之前不会发布或刷新屏幕。

详细说明,如果按TAB键,不会出现这个问题,只是在通过JS编程设置焦点时。

如果有人能向我解释原因,我将不胜感激。

塔西斯 - 瓦鲁瓦

最佳答案

你需要有 <form onsubmit="return false;">对于此处提到的表格:How to prevent ENTER keypress to submit a web form?

关于c# - 关注 TextBox 正在使用 C# .net 触发 PageLoad,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6231524/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com