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, время: 06:58. |