Javascript 如何在捕获Enter keycode(';13';)后触发另一个keycode?
我成功地捕获了Enter键代码并阻止我的页面发布。 但我需要在Enter的位置添加另一个字符:准确地说是keycode39 我怎样才能做到这一点?这是我的javascript。我看到警报触发,但没有以下功能:( 输入代码Javascript 如何在捕获Enter keycode(';13';)后触发另一个keycode?,javascript,keycode,Javascript,Keycode,我成功地捕获了Enter键代码并阻止我的页面发布。 但我需要在Enter的位置添加另一个字符:准确地说是keycode39 我怎样才能做到这一点?这是我的javascript。我看到警报触发,但没有以下功能:( 输入代码 function CkKeyPress(e) { var evt = (e) ? e : window.event; var key = (evt.keyCode) ? evt.keyCode : evt.which; if (key == 13) {
function CkKeyPress(e) {
var evt = (e) ? e : window.event;
var key = (evt.keyCode) ? evt.keyCode : evt.which;
if (key == 13) {
CancelDefault(evt);
}
}
function CancelDefault(e) {
if (e.preventDefault) {
e.preventDefault();
alert('enter caught');
ReplaceEnterWithCharacter();
}
e.returnValue = false;
}
function ReplaceEnterWithCharacter() //this function doesnt work somehow
{
e = $.Event('keyup');
e.keyCode = 65; // A
$('input').trigger(e);
}
<asp:TextBox ID="txtSearch" runat="server" onkeypress="return CkKeyPress(event);"></asp:TextBox>
功能CkKeyPress(e){
var evt=(e)?e:window.event;
var key=(evt.keyCode)?evt.keyCode:evt.which;
如果(键==13){
取消违约(evt);
}
}
函数取消默认值(e){
如果(如默认){
e、 预防默认值();
警报(“输入捕获”);
ReplaceEnterWithCharacter();
}
e、 returnValue=false;
}
函数ReplaceEnterWithCharacter()//此函数不知何故无法工作
{
e=$.Event('keyup');
e、 keyCode=65;//A
$('input')。触发器(e);
}
我在这方面取得了一些成功:
jQuery.event.trigger({ type : 'keypress', which : 65 });
在当前焦点处触发按键事件
我认为不可能在触发器中间更改事件上的keycode值,也不可能在任意元素上触发keypress事件,即使它是输入或实际上是当前焦点