я слежу на предыдущий вопрос я спросил hereJQuery массив нажатием на кнопку мыши
Я работал на моем коде, и за ответами от этой должности, я устранил ошибку. Теперь я не получаю никакого вывода для консоли или результатов из массива в моем меню выбора, где раньше, когда я писал это упражнение без использования jQuery, я смог эффективно получать элементы в массиве и отображать их в моем меню выбора. Чтобы получить более полный ответ, я отправляю полный код html и javascript/jquery. Если у кого-то есть какие-либо данные о том, почему мой код не работает, я был бы признателен. Моя цель состояла в том, чтобы использовать jQuery (то, что я сейчас изучаю), чтобы достичь того, что я сделал с javascript ранее. В этом упражнении я использую пользовательское поле ввода для пользователей, чтобы добавить клиентов в массив нажатием одной кнопки. Когда эта кнопка нажата, я хочу, чтобы мой скрипт проверял массив, чтобы увидеть, содержит ли он этот элемент, а если нет, то нажмите элемент в массив и отобразите его в списке выбора существующих клиентов.
<!DOCTYPE html>
<html>
<head>
<title>Keeper of Time</title>
<link rel="stylesheet" type="text/css" href="kot.css">
<script type ="text/javascript" src="http://code.jQuery.com/jquery-latest.min.js"></script>
</head>
<body>
<div class="navDiv">
<ul id="navButtons">
<li><a href="">Home</a></li>
<li><a href="">Clients</a></li>
<li><a href="">Entries</a></li>
<span><li><a href="">Account</a></li></span>
</ul>
</div>
<div id="errorMessage"></div>
<div id ="newCltDiv">
<input id= "newClt" type="text" placeholder="Add a new client">
<button id="addCltBtn"> Add Client</button>
</div>
<br>
<br>
<div id="cltListDiv">
<select id="cltList">
<option>Select an existing client</option>
</select>
<button id="cltSelect">Select Client</button>
</div>
<br>
<br>
<script type="text/javascript">
var clientArray = [];
var clientInput = document.getElementById("newClt");
var sel = document.getElementById("cltList");
clientArray.push("box");
$("#addCltBtn").click(function(){
var found = $.inArray(clientInput, clientArray);
if(found >= 0) {
//Element was found update errorMessage div
$(errorMessage).html("This Client Already Exists");
} else{
clientArray.push(clientInput.value);
console.log("Objects: " + clientArray.join(", "));
updateDropList(clientInput.value);
}
});
function updateDropList(value){
var opt = document.createElement('option');
opt.innerHTML = value;
opt.value = value;
sel.appendChild(opt);
}
//test
clientArray.push("soccer");
console.log(clientArray);
</body>
</html>
При написании вопроса, попытаться быть более конкретными и сконцентрироваться на самой проблеме, а не весь код. – Itay
о чем вы говорите. это было очень специфично. И почему вы голосуете за это без причины? Это был правильный вопрос. –
Вы написали массу ненужной информации, вместо того, чтобы сосредоточиться на проблеме. Кроме того, вероятно, вы должны приложить усилия для создания онлайн-примера, показывающего вашу точную проблему (например, jsFiddle). – Itay