2017-11-17 2 views
0

나는 Tampermonkey에 자동 완성 입력 텍스트 상자가있는 웹 사이트를 만들려고 노력하고 있습니다.Tampermonkey를 사용하여 jQuery 자동 완성 플러그인을 트리거하는 방법은 무엇입니까?

사용자가이 텍스트 상자 중 하나에 내용을 입력하면 jqueryui 1.8.2을 사용하여 jQuery 검색 위젯이 실행됩니다.

https://jqueryui.com/autocomplete/에서 내 문제의 해결책을 찾을 수 없습니다.

내가하려는 것은 내 사용자 스크립트에서 문자열을 가져 와서 텍스트 상자 중 하나에 삽입하는 것입니다. 그런 다음 jQuery 검색을 자동으로 트리거하려고합니다. 문자열을 텍스트 상자에 쉽게 가져올 수 있습니다.

$('#website_Textbox').val('My String'); 

일단 문자열을 넣으면 jquery 검색을 트리거하는 방법을 알 수 없습니다.

시도했습니다. .change(), .trigger('change') 텍스트 상자를 클릭하고 텍스트 상자를 클릭하여 아무 것도 작동하지 않으려 고 시도했습니다.

검색을 수행하는 유일한 방법은 키 누르기입니다. 나는 이벤트 keypress을 만들려고했지만 그 중 하나도 작동하지 않았다. 나는 자바 스크립트로 실제 키 누름을 보낼 수 없다. 누구든지 이것에 대한 해결책을 알고 있습니까?

답변

0

그냥 JQUI's "search" methodDoc을 사용하십시오. EG :

$('#website_Textbox').val ('My String').autocomplete ("search", "My String"); 

라이브 데모 :

// ==UserScript== 
// @name  _autostart JQUI autocomplete value 
// @match *://YOUR_SERVER.COM/YOUR_PATH/* 
// @grant none 
// ==/UserScript== 

$('#website_Textbox').val ('My String').autocomplete ("search", "My String"); 

참고 :

아니면 Tampermonkey 스크립트

var wordList = [ 
 
    "The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog.", 
 
    "Several", "fabulous", "dixieland", "jazz", "groups", "played", "with", "quick", "tempo.", 
 
]; 
 
$("#zWords").autocomplete ({source: wordList}); 
 

 
$("button").click (function() { 
 
    $("#zWords").val ("er").autocomplete ("search", "er"); 
 
});
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/base/jquery-ui.css" rel="stylesheet"/> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js"></script> 
 

 
<p><button>jump-start autocomplete</button></p> 
 
<div class="ui-widget"> 
 
    <label for="zWords">Words: </label><input id="zWords"> 
 
</div>
경우에 따라 대신 none 이 표시 될 수 있습니다.에는 스크립트 삽입이 필요합니다.

+0

나는 이것을 알아 냈습니다. 위에 게시 된 솔루션은 작동하지만 자동 완성 위젯을 인스턴스화 한 기본 함수를 Tampermonkey 스크립트로 복사하는 경우에만 작동합니다. 도움을 주셔서 감사합니다 @ 브룩 아담스 – joeyr2

관련 문제