簡體   English   中英

jQuery獲取嵌入式小部件自動完成文本的價值

[英]JQuery Get Value of Embedded Widget Autocomplete Text

我已經將一個小部件嵌入到第三方站點提供的我的站點中,該小部件顯示一個輸入框,該輸入框會在輸入時自動向用戶建議文本。

該頁面上的“ Ask Your Question搜索相同。

我通過在文檔<head>包含一個widget.js文件並通過html對其進行調用來嵌入該部件。

<div id="widget-5032"></div>

當我檢查小部件的HTML時,我看到以下內容(示例項目列表);

<div>
    <ul id="search-query-5032_list">
        <li data-question="Alaska">Alaska</li>
        <li data-question="Hawaii">Hawaii</li>
        <li data-question="etc.">etc.</li>
    </ul>
</div>

這些自動建議是從第三方網站提供的,單擊該第三方時,將在輸入中填充建議的文本,並且該頁面會自動重定向到外部網站(無需單擊search按鈕)。 我無法控制小部件的功能。

我正在嘗試捕獲所選文本的值,但不確定如何呢?

我想要這樣做的原因是可以使用dataLayer.push({})將其發送到Google dataLayer.push({})代碼管理器

我已經嘗試過了,但是沒有用;

$('#search-query-5032_list li').on('click', function() {
    alert($(this).text());
});

任何建議表示贊賞。

我快速瀏覽了頁面上的代碼,我認為您可以在頁面上使用這段代碼。 嘗試/捕獲很重要,因為僅當選擇一個項目時才會創建隱藏的輸入。

springSpace.la.widget_5032_inst.search.autocomplete.input.parentNode.addEventListener('click', function(){

try {
    alert(searchform_5032.form.querySelector('input[name=faqid]').value);
}
catch(err) {
    console.log("empty");
}

});

在出現“警告”消息的地方,您將用GTM dataLayer推送代替,以將該信息導入GTM / GA。

你可以嘗試一下:

 $('#search-query-5032_list').on('click', 'li', function(){ alert($(this).text()); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="input-group"> <ul id="search-query-5032_list"> <li data-question="Alaska">Alaska</li> <li data-question="Hawaii">Hawaii</li> <li data-question="etc.">etc.</li> </ul> </div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM