Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Можно ли создать свой html-атрибут? и из JS поменять местами его и value 
:(
    Опции темы
Win MK 32
Дата 25.5.2009, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 492
Регистрация: 15.7.2002

Репутация: нет
Всего: нет



Типа вот так:
Код

<input type="button" id="b" value="Вкл" mynextvalue="Выкл" / >

Код

document.getElementById('b').onclick = function() {
     var temp;
     temp = document.getElementById('b').value;
     document.getElementById('b').value = document.getElementById('b').mynextvalue;
     document.getElementById('b').mynextvalue = temp;
}


То есть мысль такая, что хранить новое значение хотелось бы непременно в HTML, а не в функции JS. То есть там может быть и не Вкл\Выкл, а что-то более сложное.
PM   Вверх
Aliance
Дата 25.5.2009, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 17
Всего: 137



RTFM  smile 

Код

(function( elem )
{
    elem.onclick = function()
    {
        var temp = elem.value;
        elem.value = elem.getAttribute( 'mynextvalue' );
        elem.setAttribute( 'mynextvalue', temp );
    }
})( document.getElementById('b') );

PM MAIL WWW ICQ Skype   Вверх
SelenIT
Дата 26.5.2009, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 7
Всего: 401



До кучи, авось пригодится: всегда актуальное;) http://xpoint.ru/know-how/JavaScript/Atributyi?8 и относительно свеженькое http://designformasters.info/posts/custom-data-attributes/


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Win MK 32
Дата 26.5.2009, 01:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 492
Регистрация: 15.7.2002

Репутация: нет
Всего: нет



Что-то все сложнова-то как-то. Неужели нельзя проще???

Есть же elem.value, elem.id - почему же нельзя elem.mynewvalue? Нельзя?
<input type="button" id="b" value="Вкл" mynextvalue="Выкл" / > И так нельзя?
PM   Вверх
Aliance
Дата 26.5.2009, 08:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 17
Всего: 137



Win MK 32, потому что есть стандартные аттрибуты, на которые есть нечто вроде alias`ов (value, id, name), а доступ к остальным должен осуществляться именно так. Конечно, некоторые браузеры (вроде IE) позволяет делать так, как описал ты, но парни из W3C этого не поддерживают.
PM MAIL WWW ICQ Skype   Вверх
Samotnik
Дата 29.5.2009, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: нет
Всего: 191



Цитата(Win MK 32 @  26.5.2009,  01:21 Найти цитируемый пост)
Что-то все сложнова-то как-то. Неужели нельзя проще???

используй фреймворки, там одной строчкой можно элементы создавать
PM MAIL   Вверх
youri
Дата 30.5.2009, 01:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: 2
Всего: 16



Aliance, ТС, конечно, написал, что хранить значение нужно в атрибуте, но ему же и свойство подойдет, скорее всего

кроме того, не обязательно ведь каждый обработчик в вызов функции запихивать? Имхо громоздко как-то. Можно было запихнуть элемент в переменную, а потом уже назначать обработчик

p.s. внутри обработчика вообще this можно использовать

Это сообщение отредактировал(а) youri - 30.5.2009, 01:26
PM   Вверх
Aliance
Дата 30.5.2009, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 17
Всего: 137



youri, кто как привык. По мне - так лучше!
А поводу хранения данных в аттрибутах, так я вообще против этого. Я лишь склонен в сторону custom-data-attributes (о них можно почитать по второй ссылке SelenIT), но они только-только появились и пока что не вошли в стандарт, которым пользуюсь я (XHTML Strict)
PM MAIL WWW ICQ Skype   Вверх
SelenIT
Дата 30.5.2009, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 7
Всего: 401



Цитата(Aliance @  30.5.2009,  13:40 Найти цитируемый пост)
и пока что не вошли в стандарт, которым пользуюсь я (XHTML Strict)

Имхо, XHTML 1.x уже меняться не будет (вот делали-делали два года second edition XHTML1.1, да видно передумали, вернулись к версии 2001 года). Но (X)HTML5, на мой взгляд, по-любому перспективнее, т.к. именно на него делают ставку производители браузеров (а сам стандарт, в свою очередь, ориентируется на уже работающие в браузерах фичи, типа autocomplete, disabled для fieldset-а и т.п.). В отличие от XHTML1.x, родной медиа-тип которого принципиально не поддерживают все версии IE...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Aliance
Дата 1.6.2009, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 17
Всего: 137



SelenIT, так и думал, что поправишь ;)
Нет, безусловно я имел ввиду то, что такие нестандартные аттрибуты не вошли в стандарт, которым я пользуюсь (на текущий момент это XHTML), но как только я стану пользоваться стандартом HTML5 - то значит "аттрибуты в него войдут". Не имею ввиду то, что я ожидаю, что они войдут когда-нибудь в XHTML smile
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0513 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.