window.location.href
Есть вот такой код, найденный на просторах интернета, как поправить его чтобы он срабатывал на любой странице содержащей "checkout/order-pay/"
Заранее спасибо.
$(function(){
var url = window.location.href;
if (url.indexOf('checkout/order-pay/*') > -1) {
$('li.payment_method_cheque').hide();
$('div#wcpgsk-dialog-validation-errors').hide();
} else {
$('li.payment_method_cheque').show();
}
});
|
if (~url.indexOf('checkout/order-pay/'))
|
Убери звезду checkout/order-pay/* - зачем она тут нужна? И все будет работать.
|
Цитата:
|
Стопудово это он с Greasemonkey потырил прием. )))
Кстати можно сократить искомое, если взять if(window.location.pathname.indexOf('/order-pay')>-1) поскольку последний адрес указывает на action как правило, а checkout скорее всего контроллер, то есть сучность общего порядка. |
Цитата:
|
Значит у тебя нет таких путей нигде.
|
извиняюсь, потерялась часть, вероятно, существенной информации при переносе вопроса с форума на форум...
Есть шаблон payment.php и на основе него создаются страницы checkout и checkout/order-pay. Нужно чтобы на одной странице скрылся блок а и показался блок б, а на второй наоборот. К сожалению единственный способ пропустить оплату через яндекс.кассу после подтверждения заказа. |
Короче, кроме адресов у тебя там еще ажно два элемента ищутся, успешность нахождения которых ты не проверяешь, а сразу лупишь метод. Проверяй все.
var p = location.pathname;
if(p.indexOf('checkout') > -1)
console.log('there is');
Потом проверяй есть ли нужные элементы и на какой странице что есть. |
Цитата:
И вас не удивляет то факт, что сервер без проблем создает две страницы, но при этом не может понять, что надо показать/скрыть при этом нечто? Зачем вам вообще JS здесь и поиск в url? |
| Часовой пояс GMT +3, время: 12:40. |