Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.08.2016, 11:40
Новичок на форуме
Отправить личное сообщение для avrusha Посмотреть профиль Найти все сообщения от avrusha
 
Регистрация: 13.08.2016
Сообщений: 8

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();  
    } 
});
Ответить с цитированием
  #2 (permalink)  
Старый 13.08.2016, 14:00
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

if (~url.indexOf('checkout/order-pay/'))
Ответить с цитированием
  #3 (permalink)  
Старый 13.08.2016, 14:21
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Убери звезду checkout/order-pay/* - зачем она тут нужна? И все будет работать.
Ответить с цитированием
  #4 (permalink)  
Старый 13.08.2016, 19:31
Новичок на форуме
Отправить личное сообщение для avrusha Посмотреть профиль Найти все сообщения от avrusha
 
Регистрация: 13.08.2016
Сообщений: 8

Сообщение от warren buffet Посмотреть сообщение
Убери звезду checkout/order-pay/* - зачем она тут нужна? И все будет работать.
Попытка незнайки установить любое продолжение адреса.
Ответить с цитированием
  #5 (permalink)  
Старый 13.08.2016, 21:46
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Стопудово это он с Greasemonkey потырил прием. )))

Кстати можно сократить искомое, если взять

if(window.location.pathname.indexOf('/order-pay')>-1)

поскольку последний адрес указывает на action как правило, а checkout скорее всего контроллер, то есть сучность общего порядка.
Ответить с цитированием
  #6 (permalink)  
Старый 14.08.2016, 21:50
Новичок на форуме
Отправить личное сообщение для avrusha Посмотреть профиль Найти все сообщения от avrusha
 
Регистрация: 13.08.2016
Сообщений: 8

Сообщение от warren buffet Посмотреть сообщение
Стопудово это он с Greasemonkey потырил прием. )))

Кстати можно сократить искомое, если взять

if(window.location.pathname.indexOf('/order-pay')>-1)

поскольку последний адрес указывает на action как правило, а checkout скорее всего контроллер, то есть сучность общего порядка.
увы, но не работает.
Ответить с цитированием
  #7 (permalink)  
Старый 15.08.2016, 13:11
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Значит у тебя нет таких путей нигде.
Ответить с цитированием
  #8 (permalink)  
Старый 15.08.2016, 21:58
Новичок на форуме
Отправить личное сообщение для avrusha Посмотреть профиль Найти все сообщения от avrusha
 
Регистрация: 13.08.2016
Сообщений: 8

извиняюсь, потерялась часть, вероятно, существенной информации при переносе вопроса с форума на форум...

Есть шаблон payment.php и на основе него создаются страницы checkout и checkout/order-pay.
Нужно чтобы на одной странице скрылся блок а и показался блок б, а на второй наоборот.

К сожалению единственный способ пропустить оплату через яндекс.кассу после подтверждения заказа.
Ответить с цитированием
  #9 (permalink)  
Старый 15.08.2016, 22:18
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

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

var p = location.pathname;

if(p.indexOf('checkout') > -1)
   console.log('there is');


Потом проверяй есть ли нужные элементы и на какой странице что есть.
Ответить с цитированием
  #10 (permalink)  
Старый 16.08.2016, 00:58
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от avrusha
Есть шаблон payment.php и на основе него создаются страницы checkout и checkout/order-pay.

И вас не удивляет то факт, что сервер без проблем создает две страницы, но при этом не может понять, что надо показать/скрыть при этом нечто? Зачем вам вообще JS здесь и поиск в url?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
window.location.href русский символы Кирюха =) Events/DOM/Window 1 03.10.2014 09:05
Передать собранное значение ссылки в window.location.href Ivanaf jQuery 2 06.05.2014 00:44
Как к window.location.href добавить class? Shahmatist Элементы интерфейса 5 13.10.2013 13:47
помогите в window.location.href ongdash Мобильный JavaScript 7 13.08.2013 21:19
Проверка на window.location.href tutelaris Events/DOM/Window 2 28.07.2013 15:41