2015-12-07 1 views
0

Я знаю, это было предложено много раз, и я искал много. Но решения либо не работают в IE, либо не соответствуют моим требованиям.Как нажать Enter не касаясь клавиатуры, используя JavaScript, внутри коробки ввода/текстовое поле

У меня есть поле ввода, в котором пользователь может ввести имя. Значение поля ввода сохраняется в массив, разделенный пробелом.

Теперь я копирую массив [0] для ввода 1, массив [1] для ввода 2 анс так далее.

<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> 

Но, у меня есть требование, как, пользователь должен ввести имя на английском языке, и он должен конвертируется в хинди и должны отображаться в другом текстовом поле, который доступен только для чтения.

+0

Что вы имеете в виду * нажать кнопку ввода в область ввода *? Фокус? Активно это как щелчок? Разбить строку в тексте? – DontVoteMeDown

+0

Возможно, вы должны использовать 'type =" hidden "вместо" type = "text" style = "display: none;" '. –

+0

Что вы хотите, чтобы «ввести» точно? – dodo

ответ

-2

создать событие нажатия

вот мой пример код в моем приложении. Надеюсь, это поможет.

Keycode 13 является Введите ключ

$('.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); 


       } 

      } 
+0

Взятые от вопроса: «решение [...] должно быть в простом JavaScript не JQuery». Кроме того, ваш код не имеет ничего общего с созданием события, он просто обрабатывает события нажатия клавиш. –

+0

Это не лучший способ сделать что-то. Лучше узнать, чего хочет человек, чем идти вместе с уже ошибочным решением – dodo

Смежные вопросы