【发布时间】:2017-05-26 14:14:27
【问题描述】:
我尝试在输入字段(实际上是条形码输入)中捕捉 Enter 键以取消隐藏按钮。这适用于我们的工作流程:首先输入一个数字,然后显示一些按钮以继续。看起来很简单,但我就是不让它工作。按 Enter 时,页面似乎再次加载,这在 firebug 中可见。该按钮在很短的时间内可见,然后重新加载将其重新初始化为隐藏状态。
这是我的代码:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder_Head" runat="Server">
<script>
$(document).ready(function () {
// initialize with invisible borders
_Quant_notQuali = null;
QuantQuali_SetBorders();
$('div#quantqual').hide();
$('input#barcode').val('');
$('input#barcode').keyup(function (e) {
e.preventDefault();
if (e.keyCode === 13) {
$('div#quantqual').show();
}
return false;
});
return;
});
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder_Body" runat="Server">
<div>
Barcode:
<input id="barcode" type="text" style="font-size: larger;" />
</div>
<div id="quantqual">
<div class="button" id="quant" onclick="_Quant_notQuali = true; QuantQuali_SetBorders();">Kwantitatief</div>
<div class="button" id="quali" onclick="_Quant_notQuali = false; QuantQuali_SetBorders();">Kwalitatief</div>
</div>
为什么按下/捕捉回车后页面会重新加载?或者在show()之后?
这可能是因为与 ASP 系统的交互吗? (或 MasterPage?)input 元素没有 runat=server,因为稍后将通过一些 ajax 调用将数据发送到服务器。
我在这里完全不知所措......
【问题讨论】:
-
您的页面上有提交按钮吗?
-
不是,但是ASP系统可能会插入一个?没写过,在FireBug里也看不到,但是ASP页面毕竟是一个表单。
-
试过这个,没有帮助:-(