WordPress пользовательский запрос нумерации страниц с проблемой выбора даты - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть форма поиска с 3 полями, одним из которых является JQuery UI datepicker
и пользовательский wp_Query для отображения результатов поиска
и функция нумерации слов
результаты поиска отображаются корректно
однакокогда я пытаюсь перейти на следующую страницу, я думаю, что он также правильно отображает результаты
, но URL выглядит неправильно, URL выглядит так:

​/page/2/?search=run&date#038;date

и следующая ошибка в консоли:

jquery.js?ver=1.12.4:2 Uncaught Error: Syntax error, unrecognized expression: #038;date
at Function.fa.error (jquery.js?ver=1.12.4:2)
at fa.tokenize (jquery.js?ver=1.12.4:2)
at fa.select (jquery.js?ver=1.12.4:2)
at Function.fa (jquery.js?ver=1.12.4:2)
at Function.a.find (jquery-migrate.min.js?ver=1.4.1:2)
at n.fn.init.find (jquery.js?ver=1.12.4:2)
at n.fn.init.a.fn.find (jquery-migrate.min.js?ver=1.4.1:2)
at a.fn.init.n.fn.init (jquery.js?ver=1.12.4:2)
at new a.fn.init (jquery-migrate.min.js?ver=1.4.1:2)
at n (jquery.js?ver=1.12.4:2)

Когда я удаляю поле даты из формы, оно работает просто отлично.

это часть JQuery, связанная с датой

    jQuery(function() {
jQuery( ".datepicker" ).datepicker({
  changeMonth: true,
  changeYear: true,
  showButtonPanel: true,
  dateFormat:'m-yy',
  onClose: function(dateText, inst){
    jQuery(this).datepicker('setDate', new Date(inst.selectedYear, inst.selectedMonth,1));
    var selected_month = inst.selectedMonth+1;
    var month = jQuery("#ui-datepicker-div .ui-datepicker-month :selected").val();
    var year = jQuery("#ui-datepicker-div .ui-datepicker-year :selected").val();
    var full_date = jQuery(".datepicker").datepicker("getDate");
    var myElement = document.getElementById("datepicker");
    console.log(myElement);
    }
  });
});

Любая идеякак я могу удалить часть "# 038; date" из URL?

Я хочу, чтобы пользователь переходил на вторую страницу результатов поиска, чтобы URL выглядел следующим образом
/ page / 2/? search = run & date
вместо этого
/ page / 2 /? search = run & date # 038; date

Похоже, что эта проблема не связана с средством выбора даты, которое я до сих пор надеваюне знаю почему и как это исправить но этот квестне правильно описывает проблему

1 Ответ

0 голосов
/ 18 декабря 2018

Здесь я делюсь информацией о синтаксисе Как удалить часть «# 038; дата» из URL

alert(url.substring(0, url.indexOf('?')));

Кроме того, вот базовый обходной путь для вас:

//the URL ( decode it just for GOOD practice)
var someRandomUrl = decodeURI("http://example.com?modal=name");

//here we do the splitting
var splittedParts = someRandomUrl.split("?");

// the first part of the array will be URL you will require
var theURL = splittedParts[0];

// the second part of the array will be the Query String
var theQuery = splittedParts[1];
alert(theURL);

Я надеюсь, что это полезно для вас.

...