Обработка button

232
08 января 2018, 12:04

Только начал изучение JS, поэтому, вероятнее всего, допустил какую-то глупую ошибку. Замысел такой: пользователь вводит кличку, породу и вес собаки. Жмет на кнопку, вызывается функция, которая считывает инфу с полей, создает объект, передавая ему, считанные значения и вызывает метод объекта, который в свою очередь производит небольшую проверку по весу и выводит соответствующее сообщение. Но работает это иначе: в самом начале загрузки HTML выводится сообщение ": Тят!" и дальше кнопка не работает. Не могу понять почему, второй час вожусь.

window.onload = init; 
 
function init(){ 
	var button = document.getElementById("addButton"); 
	button.onclick = handleButtonClick(); 
} 
 
function handleButtonClick(){ 
	var textInput = document.getElementById("dogName"); 
	var dogName = textInput.value; 
	var textInput = document.getElementById("dogBreed"); 
	var dogBreed = textInput.value; 
	var textInput = document.getElementById("dogWeight"); 
	var dogWeight = textInput.value; 
	var dog1 = new Dog(dogName, dogBreed, dogWeight); 
	dog1.bark(); 
} 
 
function Dog(name, breed, weight){ 
	this.name = name; 
	this.breed = breed; 
	this.weight = weight; 
	this.bark = function(){ 
		if (this.weight > 25){ 
			alert(this.name + ": Вуф!!!"); 
		} else { 
			alert(this.name + ": Тяв!"); 
		} 
	}; 
}
<form> 
  <input type="text" id="dogName" size="40" placeholder="Кличка собаки"><br> 
  <input type="text" id="dogBreed" size="40" placeholder="Порода собаки"><br> 
  <input type="text" id="dogWeight" size="40" placeholder="Вес собаки"><br> 
  <input type="button" id="addButton" value="Голос!"> 
</form>

Answer 1

А если написать так:

button.onclick = handleButtonClick;
READ ALSO
Имитация кликов вконтакте

Имитация кликов вконтакте

Здравствуйте, у меня Вконтакте есть фотографии которые я лайкал, хочу написать скрипт, который будет перелистывать их и сохранять к себеДелать...

304
Ошибка в jquery throttle-debounce

Ошибка в jquery throttle-debounce

При обработке события mousemove в jquery использовал плагин throttle-debounce, а именно функцию debounce для оптимизации цикла внутриИ внутри самого файла throttle-debounce...

250
Как отловить изменения у &lt;select&gt;?

Как отловить изменения у <select>?

Допустим у нас есть такой код и допустим пользователь оказался хитрымОн вставил некий скрипт в код который изменяет значение у select при событии...

315
Добавить пустое поле в DropDownList

Добавить пустое поле в DropDownList

Подскажите, возможно ли добавить пустое значение в уже сформированный список и чтобы оно выводилось первым на вью?

213