如何在输入/文本框框内使用JavaScript实际按Enter键而不实际触摸键盘

时间:2015-12-07 17:32:51

标签: javascript html keyevent

我知道这已被多次询问,我搜索了很多。但解决方案要么不在IE中工作,要么不符合我的要求。

我有一个输入框,用户可以在其中输入名称。输入框的值将保存到按空格分割的数组中。

现在我将array [0]复制到输入框1,将数组[1]复制到输入框2 ans等等。

<input id="txbox" type="text" value="Hello World" /> 

array[0]=Hello 
array[1]=World 

<input id="input1" type="text" value="Hello" style="display:none"/> 
<input id="input2" type="text" value="World"  style="display:none"/> 

一旦文本被复制,我想在文本后面的输入区域内点击/触发ENTER,而不是实际触摸键盘(通过JavaScript)。我怎样才能做到这一点?

PS:解决方案应该在IE8及更高版本中运行,并且应该是纯JavaScript而不是jQuery。

需要模拟输入:

我在我的项目中使用下面的代码。只有在单词后面按Enter键才能将输入文本从英语转换为印地语。通过这个,我可以逐字拼写。

    <html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <script type="text/javascript" src="https://www.google.com/jsapi">
    </script>
    <script type="text/javascript">

      // Load the Google Transliterate API
      google.load("elements", "1", {
            packages: "transliteration"
          });

      function onLoad() {
        var options = {
            sourceLanguage:
                google.elements.transliteration.LanguageCode.ENGLISH,
            destinationLanguage:
                [google.elements.transliteration.LanguageCode.HINDI],
            shortcutKey: 'ctrl+g',
            transliterationEnabled: true
        };

        // Create an instance on TransliterationControl with the required
        // options.
        var control =
            new google.elements.transliteration.TransliterationControl(options);

        // Enable transliteration in the textbox with id
        // 'transliterateTextarea'.
        control.makeTransliteratable(['txtEnglish']);
      }
      google.setOnLoadCallback(onLoad);
    </script>
  </head>
  <body>
    Type in Hindi (Press Ctrl+g to toggle between English and Hindi)<br>
    <input type="text" id="txtEnglish" size="20"/>
    <input type="text id="txtHindi" size="20"  readonly/>
  </body>
</html> 

但是,我有要求,用户应该输入英文名称,它应该转换为印地语,并应显示在其他只读的文本框中。

1 个答案:

答案 0 :(得分:-2)

创建一个按键事件

这是我的应用中的示例代码。 希望它有所帮助。

Keycode 13是Enter键

 $('.search-input').keypress(function(event) {
          var search = $('.search-input').val();
          var keycode = (event.keyCode ? event.keyCode : event.which);
          if (keycode == '13') {
              var len = $('.search-input').val().length;

              if (len <= 0) {

                  $('#search-contents').slideDown();
                  $('.item-list').append('<div class="col-centered"><h3 class="title"> No Item/s Found.</h3></div>');
              } else {

                  $('#search-contents').slideDown();
                  $('html,body').animate({
                          scrollTop: $('#search-contents').offset().top
                      },
                      'slow');

                  searchFunction(search);


              }

          }