0

HTML に次のコード スニペットがあります。

 <form class="navbar-search pull-right search-query" value = "" action="/search/?q=" style="line-height:25px;">
    <input type="text" id="navbarsearch" class="search-query span2" style="border-radius:14px 14px 14px 14px;" name = "q" placeholder="Search">
      <i class="icon-search icon-white" onclick="document.forms.search.submit();"></i>
         &nbsp;&nbsp;&nbsp;
 </form>

この変数を次のようにJavascriptに渡そうとしていますが、何らかの理由でクエリ変数が正しく渡されていないと思います....

<script type="text/javascript">
    $("#navbarsearch").click(function() {
        // This sends us an event every time a user clicks the button
        mixpanel.track('SearchQuery', {'query': document.getElementById('navbarsearch').value, 'url' : window.location.pathname});
    });
</script>

アクションは MixPanel に表示されますが、クエリ変数は表示されません。私は何か間違ったことをしていますか?

4

2 に答える 2

1

document.ready 内に配置する必要があります。

$(function() {   //  <--- there.
    $("#navbarsearch").click(function() {
    mixpanel.track(
        'SearchQuery',
        {
            'query': $(this).val(),   
            'url' : window.location.pathname
        }
    );
});
});
于 2013-02-12T15:06:42.320 に答える
0

クリック イベントは、ユーザーがマウスでクリックしたときに発生します。キーストロークを聞きたいと思いますか?

試す:

$("#navbarsearch").keydown(function() {
    mixpanel.track('SearchQuery', {
         'query': document.getElementById('navbarsearch').value,
         'url' : window.location.pathname
    });
});
于 2013-02-12T15:07:34.423 に答える