在输入时重定向按javascript(但表单是硬连接到插件中的,所以必须使用输入类而不是ID)

Redirect on enter press javascript (But form hardwired into plugin, so must use input class rather than ID)

本文关键字:输入 ID 插件 javascript 重定向 表单 连接      更新时间:2023-09-26

所以我正在为wordpress使用一个名为FacetWP的插件,并创建一个前端搜索。我希望在按enter键时重定向搜索输入。搜索输入称为facet。

<?php echo facetwp_display( 'facet', 'search'); ?></div> <!-- Search input-->

HTM1中的搜索输入看起来是这样的,但我无法编辑它

<input type="search" class="facetwp-search" placeholder="">

因此,我必须按类而不是ID调用它,因为我不能添加ID

到目前为止,我有

<script>
$("#facetwpsearch").keyup(function(e){
if(e.keyCode == '13')
{
function fwp_redirect() {
var query = FWP.build_query_string();
window.location.href = '/program-filter/?' + query;
}
});
<script>

非常感谢您的帮助,谢谢!

当按下回车键时,您的代码只会声明一个函数,而不是调用它。

应该是这样的:

<script>
function fwp_redirect() {
   FWP.parse_facets();
   FWP.set_hash();
   var query = FWP.build_query_string();
   window.location.href = '/program-filter/?' + query;
}
$(".facetwpsearch").keydown(function(e){
   if(e.keyCode == '13') {
      fwp_redirect();
   }    
});
<script>

有一个有效的解决方案:

<script>
    function fwp_redirect() {
        FWP.parse_facets();
        FWP.set_hash();
        var query = FWP.build_query_string();
        window.location.href = '<?php echo get_permalink(get_page_by_path( 'documents')); ?>/?' + query;
    }
    // redirect on "enter" key press
    jQuery('body').on('keyup', '.facetwp-search', function(e) {
        if(e.keyCode == '13') {
            fwp_redirect();
        }  
    });
</script>