Добавляю в href ИД переключателя по клику, но при каждом нажатии на переключатель, ИД добавляется снова и снова, а нужно только один, попробовал очистить href при нажатии, не срабатывает. Подскажите как правильно реализовать?
jQuery(document).on('click', '.radio', function() {
var $link = jQuery('#link'),
href = $link.attr('href').replace(/^(.+)\?.+$/, '$1');
$link.attr('href', href + '-' + $(this).attr("id"));
console.log( $link.attr('href'));
});
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<form class="row-flex radio-input">
<div><input id="casco" class="radio" name="gender" type="radio" /><label for="casco">Obre viva (casco)</label></div>
<div><input id="costado" class="radio" name="gender" type="radio" /><label for="costado">Obre muerta (costado)</label></div>
</form>
<a id="link" class="boton-ir-p my-btn bgr" href="velero-quilla-corrida"> Siguente</a>
Вот как я сделал, после загрузки страницы в переменную храню значение href
-a, а потом каждый раз добавляю в текущий href
переменную плюс id
radio
кнопки.
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<form class="row-flex radio-input">
<div><input id="casco" class="radio" name="gender" type="radio" /><label for="casco">Obre viva (casco)</label></div>
<div><input id="costado" class="radio" name="gender" type="radio" /><label for="costado">Obre muerta (costado)</label></div>
</form>
<a id="link" class="boton-ir-p my-btn bgr" href="velero-quilla-corrida"> Siguente</a>
<script>
jQuery(document).ready(function(){
// После загрузки в переменную храним атрибут href
var link_href = jQuery('#link').attr('href');
jQuery(document).on('click', '.radio', function() {
var $link = jQuery('#link'),
$link.attr('href', link_href + '-' + $(this).attr("id"));
console.log( $link.attr('href'));
});
});
</script>
На первый клик запоминаем первоначальный атрибут href
в data-href
и используем его:
$(document).on('click', '.radio', function() {
var $link = jQuery('#link');
var href = $link.data('href');
if (!href) {
href = $link.attr('href');
$link.data('href', href);
}
$link.attr('href', href + '-' + $(this).attr("id"));
console.log($link.attr('href'));
});
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<form class="row-flex radio-input">
<div><input id="casco" class="radio" name="gender" type="radio" /><label for="casco">Obre viva (casco)</label></div>
<div><input id="costado" class="radio" name="gender" type="radio" /><label for="costado">Obre muerta (costado)</label></div>
</form>
<a id="link" class="boton-ir-p my-btn bgr" href="velero-quilla-corrida"> Siguente</a>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Подскажите, пжлст, как изменить вид ссылки? Имеется загрузчик который подгружает налету изображенияПроблема состоит в том, что он исполняется...
С помощью <input type=range> задаем количество товараЦена единицы товара, перечисленная в массиве tariff[75,70,66,62,58,55] колеблется в зависимости от количества,...
Как показать кнопку если файл существует на сервере или скрыть кнопку если файла нет (можно с jquery или без), при этом периодически проверять...