Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.12.2014, 22:25
Аспирант
Отправить личное сообщение для andreydial Посмотреть профиль Найти все сообщения от andreydial
 
Регистрация: 13.05.2013
Сообщений: 39

Как отработать два события за один раз.
Может неправильно тему назвал, но по другому не знаю даже как. Есть код
div id="Type_location">
                 <form action="javascript: void(0);" onSubmit="showAddress(this.address.value); return false">
					<span id="Type_location"><label for="address"></label></span>

				<nobr><input  id="address" class="hideLOnClick fildInput" type="text" name="type1" value="Type location" onclick='hideWords($(this));' placeholder="Type location" def_val="Type location" title="Type location" limit='69' valid="^.+$" error="- Please type a location then press find" ></input>&nbsp;<input  id="find_bootton" class="fildInput" type="submit" value=" Find " ></nobr>
                </form>

        <script>
            var autocomplete = new google.maps.places.Autocomplete($("#address")[0], {});

            google.maps.event.addListener(autocomplete, 'place_changed', function() {
                var place = autocomplete.getPlace();
                console.log(place.address_components);
            });
        </script>


			</div> <!-- Type_location -->

Надо убрать кнопку
<input  id="find_bootton" class="fildInput" type="submit" value=" Find " >

но чтобы событие отработалось сразу после автозаполнения
<form action="javascript: void(0);" onSubmit="showAddress(this.address.value); return false">

Короче говоря как сократить строку
<input  id="address" class="hideLOnClick fildInput" type="text" name="type1" value="Type location" onclick='hideWords($(this));' placeholder="Type location" def_val="Type location" title="Type location" limit='69' valid="^.+$" error="- Please type a location then press find" ></input>&nbsp;<input  id="find_bootton" class="fildInput" type="submit" value=" Find " ></nobr>

и убрать второй input, но событие отработать?
За ошибки в правописании не гнобить, творчество не мое. Изменяю функционал.
Ответить с цитированием
  #2 (permalink)  
Старый 07.12.2014, 05:08
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от andreydial
после автозаполнения
Автозаполнение - это событие place_changed гугл мапсов?
При заполнении тебе надо вызвать showAddress? Добавь туда (в обработчик события place_changed) showAddress(..).
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 08.12.2014, 14:28
Аспирант
Отправить личное сообщение для andreydial Посмотреть профиль Найти все сообщения от andreydial
 
Регистрация: 13.05.2013
Сообщений: 39

У меня по нажатии
<input  id="find_bootton" class="fildInput" type="submit" value=" Find " >

Происходит запись координат в базу и выдается сообщение что адрес обработан.
А надо после клика в строке автозаполнения активировать этот механизм, т.е. убрать кнопку Find визуально.
Ответить с цитированием
  #4 (permalink)  
Старый 08.12.2014, 17:01
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Выше уже ответил.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #5 (permalink)  
Старый 08.12.2014, 17:12
Аспирант
Отправить личное сообщение для andreydial Посмотреть профиль Найти все сообщения от andreydial
 
Регистрация: 13.05.2013
Сообщений: 39

ShowAdress вызывается и работает правильно. place_changed тоже. Здесь никаких проблем.
После выбора места в автозаполнении надо автоматом отработать событие
id="find_bootton"
. А оно сейчас отрабатывается только после нажатия соответствующей кнопки. Вот что я хочу сказать. Как запустить скрипт в скрипте? Либо я вас не очень понимаю.
Ответить с цитированием
  #6 (permalink)  
Старый 08.12.2014, 17:14
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от danik.js
При заполнении тебе надо вызвать showAddress? Добавь туда (в обработчик события place_changed) showAddress(..).
Объясни как ты это понял - посмотрим правильно ты понял или нет.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #7 (permalink)  
Старый 08.12.2014, 17:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от andreydial
автоматом отработать событие
id="find_bootton"
Это не событие. Это id элемента
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #8 (permalink)  
Старый 08.12.2014, 17:20
Аспирант
Отправить личное сообщение для andreydial Посмотреть профиль Найти все сообщения от andreydial
 
Регистрация: 13.05.2013
Сообщений: 39

google.maps.event.addListener(map, 'click', function()
	{
  		infowindow.close();
		});
	setMarkers(1);	// вывод на карту маркеров в кластерах (Zork_libs.js)

	$("#find_bootton").attr("disabled",false);
	$("#select_cat").attr("disabled",false);
	
	$('#pic').customFileInput('Upload Pic');
}

function showAddress(address) {
	geocoder = new google.maps.Geocoder();
	geocoder.geocode( {'address': address}, function(results, status)
	{
		if (status == google.maps.GeocoderStatus.OK)
		{//yourKML.setMap(null);
				var lat = results[0].geometry.location.lat();
				var lon = results[0].geometry.location.lng();
				document.getElementById("lat").value = lat;
				document.getElementById("lng").value = lon;
				var location = new google.maps.LatLng(lat,lon);

				corrent_str=1;
				getNewPage(lat,lon,address);
				alert("Location found. Please continue.");		
		}else
			{
				alert("No results have been found. Please enter a different criteria.");
				$("#lat").val(""); $("#lng").val("");
			}
	});
}


Часть скрипта
$("#find_bootton").attr("disabled",false);
Разве не здесь проверяется нажатие кнопки?
Ответить с цитированием
  #9 (permalink)  
Старый 08.12.2014, 17:32
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от andreydial
find_bootton
Цитата:
Bootton.I is a trojan for Symbian OS Series 60 2nd Edition phones
Сообщение от andreydial
$("#find_bootton").attr("disabled",false);
Здесь кнопка делается доступной (включенной). Хотя она вроде и так доступна
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #10 (permalink)  
Старый 08.12.2014, 22:44
Аспирант
Отправить личное сообщение для andreydial Посмотреть профиль Найти все сообщения от andreydial
 
Регистрация: 13.05.2013
Сообщений: 39

Сообщение от danik.js Посмотреть сообщение
Автозаполнение - это событие place_changed гугл мапсов?
При заполнении тебе надо вызвать showAddress? Добавь туда (в обработчик события place_changed) showAddress(..).
У меня скрипт гугл мапса так прописан
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&libraries=places&language=en-AU"></script>

А обработка
<script>
            var autocomplete = new google.maps.places.Autocomplete($("#address")[0], {});

            google.maps.event.addListener(autocomplete, 'place_changed', function() {
                var place = autocomplete.getPlace();
                console.log(place.address_components);
            });
        </script>

Я вставлял так
<script>
            var autocomplete = new google.maps.places.Autocomplete($("#address")[0], {});

            google.maps.event.addListener(autocomplete, 'place_changed', function() {
                var place = autocomplete.getPlace();
                console.log(place.address_components);
            });
showAddress(this.address.value);
        </script>

и так
<script>
            var autocomplete = new google.maps.places.Autocomplete($("#address")[0], {});

            google.maps.event.addListener(autocomplete, 'place_changed', function() {
                var place = autocomplete.getPlace();
                console.log(place.address_components);
showAddress(this.address.value);
            });
        </script>

ни фига не работает. Где я гоню?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как много раз выполнять запрос JSONP? sabano Общие вопросы Javascript 16 24.08.2013 15:11
Как после ресайза вызвать обработчик один раз? Nanto Events/DOM/Window 1 23.08.2013 19:55
Как сделать чтобы клавиатурные события пропускались сквозь флешку? khusamov Общие вопросы Javascript 3 11.02.2012 16:48
Как заставить событие сработать один раз GRean Javascript под браузер 4 07.06.2010 00:29
Sortable, два связанных списка. Как один из них сделать неизменяемым? kvecxjo jQuery 1 30.03.2010 03:15