Проверьте, содержит ли url строку с JQuery
У меня есть страница с опциями выбора, и я использую JQuery для обновления страницы и добавления строки к URL-адресу при нажатии на эту опцию. Теперь мне нужно проверить URL-адрес браузера, чтобы увидеть, содержит ли он указанную строку.
Глядя на другие темы, я думал, что indexOf
будет работать, но при попытке это не сработает. Как еще я могу проверить, содержит ли URL-адрес что-то вроде ?added-to-cart=555
? Полный URL-адрес обычно выглядит следующим образом: http://my-site.com
, и после нажатия одной из опций он выглядит следующим образом после перезагрузки страницы: http://my-site.com/?added-to-cart=555
. Мне просто нужно проверить, содержит ли URL-адрес этот бит ?added-to-cart=555
.
Вот что у меня есть:
jQuery("#landing-select option").click(function(){
$('#product-form').submit();
window.location.href += $(this).val()
});
jQuery(document).ready(function($) {
if(window.location.indexOf("?added-to-cart=555") >= 0)
{
alert("found it");
}
});
Ответы
Ответ 1
Используйте Window.location.href, чтобы взять URL-адрес в javascript. это свойство, которое сообщит вам текущее местоположение URL-адреса браузера. Установка свойства на что-то другое приведет к перенаправлению страницы.
if (window.location.href.indexOf("?added-to-cart=555") > -1) {
alert("found it");
}
Ответ 2
window.location - это объект, а не строка, поэтому вам нужно использовать window.location.href для получения фактического строкового url
if (window.location.href.indexOf("?added-to-cart=555") >= 0) {
alert("found it");
}
Ответ 3
используйте href
с помощью indexof
<script type="text/javascript">
$(document).ready(function () {
if(window.location.href.indexOf("added-to-cart=555") > -1) {
alert("your url contains the added-to-cart=555");
}
});
</script>
Ответ 4
if(window.location.href.indexOf("?added-to-cart=555") >= 0)
Это window.location.href
, а не window.location
.