Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Простой телефонный справочник(список контактов) на Javascript!!! (https://javascript.ru/forum/misc/60948-prostojj-telefonnyjj-spravochnik-spisok-kontaktov-na-javascript.html)

Antares_POV 28.01.2016 13:10

Простой телефонный справочник(список контактов) на Javascript!!!
 
Здравствуйте программисты .
Я новичок, сейчас разбираюсь с JavaScript.
Нужна ваша квалифицированная помощь.
Для практики пытаюсь написать простой телефонный справочник
где можно добавить контакт через кнопку добавить, удалить не нужный и
иметь возможность редактировать данные.
Понимаю что надо создать объект например 'contacts' и в массиве записать свойства.
Добавлять пользователя с помощью формы.
И чтобы данные новых пользователей отображались в списке .
Но как завязать массив с формой не знаю :(((.
Может представляю себе это как-то не так.


Помогите советами или ссылкой на что-то похожее. Чтобы я разобрался с кодом .
Спасибо!!!!!

laimas 28.01.2016 13:22

Цитата:

Сообщение от Antares_POV
Но как завязать массив с формой не знаю

Пояснить "завязать"? Вообще, у вас будет интерфейс на клиенте, при этом можно вообще обойтись без JS, по большому счету он не обязателен. Но если добавление/редактирование данных, а они будут на сервере, без перегрузки основного содержимого страницы, то это Ajax, вот тогда JS нужен, ну и можно предварительную проверку ввода делать на JS, а можно и без него.

Antares_POV 28.01.2016 14:18

Здравствуйте. Объясню.
Хочу написать код просто на javascript/
Например:

Петров
Сидоров
.......
Кнопки: Добавить Удалить

При нажатии на контакт открывается форма редактирования
данных.
При нажатии на кнопку Добавить открывается форма для добавления данных.

Завязать массив и форму- я просто вот как раз здесь не совсем понимаю как я могу вызвать форму
заполнить в нее данные которые добавятся в массив. По этому было бы не плохо найти пример который я почему-то найти не могу. Может не то ищу?? Может не правильно ставлю вопросы.
Как создать массив знаю ка форму тоже. Вот какой код это все свяжет пытаюсь разобраться.
Спасибо.

laimas 28.01.2016 14:25

А, просто код для тренировки. Тогда нужно определиться, что будет базой в данном справочнике. Например, если просто номер телефона, это одно и просто, но если у номера телефона есть владелец, а этот владелец проживает по адресу, и т.п.. С этого надо начитать. А уж потом будет известно что для обслуживания этой базы потребуется.

Antares_POV 28.01.2016 14:32

Вот как раз владелец телефон и где проживает.

Antares_POV 28.01.2016 14:34

Ну понятно что оформить с помощью CSS это уже не столь важно и сложно.

laimas 28.01.2016 14:53

Цитата:

Сообщение от Antares_POV
Вот как раз владелец телефон и где проживает.

Теперь нужно определиться что в этих данных будет их идентификаторами, причем уникальными. Ведь что означает "добавить запись базу эту и редактировать сущесвующую запись"? А до

Цитата:

Сообщение от Antares_POV
Ну понятно что оформить с помощью CSS это уже не столь важно и сложно.

пока как пехом до Берлина.

Antares_POV 28.01.2016 15:16

Попробую написать что-то и выложу а то как-то на пальцах все спрашиваю.
Спасибо. Лихо дело начало :)

Antares_POV 30.01.2016 03:02

Доброй ночи всем.
Пару месяцев тому проходил тут:
https://www.codecademy.com/courses/j...dffd00020bf661
online обучение. Чесно разобрал не все!!
Но вспомнил про список контактов на том сайте.
Вот похожий код я его немножко переделал.

<script type="text/javascript">

var contacts = {};

contacts.Andriy = {
firstName: "Andriy",
lastName: "Zubko",
age: "45",
phone: "096-256-89-96",
address: [
["Almaznuy 25"],
["Poltava"]
]
};

contacts.Serg = {
firstName: "Serg",
lastName: "Masalukin",
age: "33",
phone: "050-236-65-88",
address: [
["Apartment 23"],
["Kuiv 105"]
]
};

var list = function(data) {
for (var key in data) {
alert(data[key].firstName);
}
};

var search = function(name) {
for (var key in contacts) {
if (contacts[key].firstName === name) {
document.write("Name: " + contacts[key].firstName + "</br>" + "Lastname: " + contacts[key].lastName + "</br>" + "Age: " + contacts[key].age + "</br>" + "Phone: " + contacts[key].phone + "</br>" + "Address: " + contacts[key].address + "</br>");
return contacts[key];
}
}
};

list(contacts);
search("Serg");

</script>

Antares_POV 30.01.2016 03:07

Можно ли преобразовать этот код под те параметры что я писал выше?
Нужна подсказка :)).
Дальше буду поэтапно делать сам. Не прошу сделать за меня!!
Спс.

laimas 30.01.2016 11:45

Ну это далеко от телефонного справочника. Если первично, это телефон, значит он должен быть первичным ключом. Что нужно делать при добавлении телефона в справочник - нужно обязательно проверять есть ли уже в нем введенный пользователем номер, и если есть, то ошибка. Тоже самое при редактировании добавленного номера нужно проверять. А чтобы проверять, то проще это сделать по первичному ключу.

var phones = {
    "номер телефона" : {"имя владельца", "фамилия владельца",  "что-то еще нужное"}   
}


Хотя такие данные хранят на сервере в базе и там не важно какое это будет поле, главное чтобы индекс был.


Часовой пояс GMT +3, время: 02:40.