Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.04.2017, 18:15
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 403

Вставка текста в зависимости от выбранной радиокнопки
Добрый день. Что делаю не так? Пытаюсь при клике по полю div вычислить координаты и вставить в тот input, который связан с радиокнопкой.
function getCurCoordsInsideRect(e) {
    var x = e.offsetX == undefined ? e.layerX : e.offsetX;
    var y = e.offsetY == undefined ? e.layerY : e.offsetY;
	
	jQuery("input[name=radio]:radio").change(function() {
		var checkid = (jQuery(this).attr('id'));
		var inputid = checkid.replace("radio-", "#input-");

		if (jQuery("radio-1").prop('checked')) {	
			jQuery("input-1").val(inputid);
			alert(x +'x'+ y);
		}
	})
	
}
function getElement(e, element) {
    getCurCoordsInsideRect(e, element);
}


<div id="div-1">
     <input type="radio" name="radio" id="radio-1" value="">
     <input type="text" name="input-1" id="input-1" value="1">
</div>
<div id="div-2">
     <input type="radio" name="radio" id="radio-2" value="">
     <input type="text" name="input-2" id="input-2" value="2">
</div>
Ответить с цитированием
  #2 (permalink)  
Старый 14.04.2017, 18:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от Янковиц
Пытаюсь при клике по полю div вычислить координаты и вставить в тот input, который связан с радиокнопкой.
не осилил
Ответить с цитированием
  #3 (permalink)  
Старый 14.04.2017, 18:33
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 403

Это так, поэтому и обращаюсь к форумчанам.
Ответить с цитированием
  #4 (permalink)  
Старый 14.04.2017, 18:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Янковиц,
не понимаю вашего описания
Ответить с цитированием
  #5 (permalink)  
Старый 14.04.2017, 18:43
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 403

Я получаю координаты при клике по некоему div:
function getCurCoordsInsideRect(e) {
    var x = e.offsetX == undefined ? e.layerX : e.offsetX;
    var y = e.offsetY == undefined ? e.layerY : e.offsetY;

alert(x +'x'+ y);	
}
function getElement(e, element) {
    getCurCoordsInsideRect(e, element);
}

Алерт выводит, все верно.
Но теперь мне нужно прикрутить зависимость.
Если активирована радио кнопка с id="radio-1", то вставляем координаты в поле input с id="input-1". И так далее...
Ответить с цитированием
  #6 (permalink)  
Старый 14.04.2017, 18:44
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Янковиц,
а если не одна не активирована?
Ответить с цитированием
  #7 (permalink)  
Старый 14.04.2017, 18:49
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 403

если не активированно, то и никуда не выводятся координаты
Ответить с цитированием
  #8 (permalink)  
Старый 14.04.2017, 18:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Янковиц,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
 <style type="text/css">
    .hot{
         border: 1px dashed Gray; padding: 5px; height: 100px; width: 100px
    }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
    $(".hot").on("click", function(event) {
    var parent = $('[name="radio"]:checked').parents("div");
    $('[name^="input"]', parent).val(event.pageX + " : "+event.pageY)
})
});
  </script>
</head>

<body>

 <div class="hot">click me</div>
<div id="div-1">
  <input type="radio" name="radio" id="radio-1" value="" >
  <input type="text" name="input-1" id="input-1" value="1">
</div>
<div id="div-2">
  <input type="radio" name="radio" id="radio-2" value="">
  <input type="text" name="input-2" id="input-2" value="2">
</div>

</body>
</html>
Ответить с цитированием
  #9 (permalink)  
Старый 14.04.2017, 19:08
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 403

Спасибо большое. Можно последний вопрос...
Почему у меня браузер ругается на приведенный код:
Uncaught TypeError: $ is not a function
Ответить с цитированием
  #10 (permalink)  
Старый 14.04.2017, 19:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Янковиц,
скорее всего у вас уже нет $ и вам нужно все $ заменить на jQuery.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
передача текста в textarea в зависимости от выбора radiobutton AndreiN Общие вопросы Javascript 4 07.02.2016 23:34
Вставка текста в value кнопки rodiony4 jQuery 4 26.01.2016 01:22
Поменять цвет текста в зависимости от условия chernik_m jQuery 2 27.05.2014 15:32
Цвет текста в зависимости от значения Avel Mink jQuery 4 08.10.2012 14:21
Вставка текста в форму при нажатии на ссылку Sergei1988 Общие вопросы Javascript 2 03.04.2011 22:05