Смена текста при выборе ссылки

peretc001

Новичок
Добры день.

Нужно изменить цену при выборе размера.

Цена передается по ссылке:
PHP:
<div id="block2">
<a href="/index.php?price=140000">4м</a>
<a href="/index.php?price=160000">6м</a>
<a href="/index.php?price=180000">8м</a>
</div>
Цена определяется php из ссылки:
PHP:
$price = htmlspecialchars(trim($_GET['price']));
if ($price == '') { $price = '14000'; }
И нужно все это без перезагрузки страницы:
PHP:
$(document).on('click','#block2 p a',function(){
    var ww = $.ajax({
    type: "GET",
    cache: false,
    url: $(this).attr('href'),
    global: false,
    dataType: "text",
    success: function(data){
          $('#block2 p.price span').html($(data).find('#block2 p.price span').html());
    },
}); //console.log(ww)
if (ww){
return false;
} else{
    return true;
    }
});
Без ajax все работает, но с переходом по ссылке
С ajax при нажатии на ссылку цена пропадает.

вообщем, сразу ткните носом где читать)

или есть вариант проще менять цену в зависимости от размера.
 
Последнее редактирование:

peretc001

Новичок
хочу понять как это работает.

по jquery я читал, а вот такой же или похожей конструкции не нашел.
 

WMix

герр M:)ller
Партнер клуба
думаю $(data) не правильно, но ошибку искать придется тебе самому
 

peretc001

Новичок
дадите подсказку, потому что даже в консоли не отображаются ошибки
 

WMix

герр M:)ller
Партнер клуба
$(data) не является частью документа
 

peretc001

Новичок
а как сделать чтобы являлся?
даже если я подставляю код который не меняется динамически, т.е. он всегда один и тот же на этой странице, он все равно не отображается
 

WMix

герр M:)ller
Партнер клуба
я к тому что find убери и всавь целиком
$('#block2 p.price span').html(data)
 

peretc001

Новичок
кстати от версии jqyery зависит работоспособность? на другом сайте работает на 1.7.1.min
здесь я пробовал 1.8.1min и 1.9.1.min тогда вообще ничего не происходит, даже текст, который должен подгружаться не пропадает, как на 1.7.1
 

peretc001

Новичок
$('#block2 p.price span').html(data) работает)!!!

только единственно подгружает всю страницу вместо нужной цены

я подключил последнюю версию напрямую
<script src="//code.jquery.com/jquery-1.12.0.min.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>

буду искать как отфильтровать только цену
 

peretc001

Новичок
блин, я три дня мучился, а оказалось что нужно было всего лишь объединить все в один div
а из jquery этот div убрать $(document).on('click','p a',function(){
 

peretc001

Новичок
полный код примера, если кому надо:
PHP:
<script src="//code.jquery.com/jquery-1.12.0.min.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script type="text/javascript">
$(document).on('click','p a',function(){
 var ww = $.ajax({
 type: "GET",
 cache: false,
 url: $(this).attr('href'),
 global: false,
 dataType: "text",
 success: function(data){
 $('p.price span').html($(data).find('p.price span').html());
 },
}); //console.log(ww)
if (ww){
return false;
} else{
 return true;
 }
});
</script>
<?php
$price = htmlspecialchars(trim($_GET['price']));
if ($price == '') { $price = '14000'; } 
?>
<div id="block2">
<p><a href="<?php echo "http://".$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF']; ?>?price=14000">4м</a></p>
<p><a href="<?php echo "http://".$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF']; ?>?price=16000">6м</a></p>
<p><a href="<?php echo "http://".$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF']; ?>?price=18000">8м</a></p>
<p class="price">Цена: <span><?php echo $price; ?></span> &#8381;</p>
</div>
 
Сверху