Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.01.2013, 16:16
Аспирант
Отправить личное сообщение для NeoMurderer Посмотреть профиль Найти все сообщения от NeoMurderer
 
Регистрация: 16.02.2011
Сообщений: 98

Сменить атрибут type
Скажите, как можно сменить атрибут type у input'ов. Вот код, как я пытаюсь делать, но ничего не происходит.
$(".form-horizontal").find(".answer").each(function() {
      $(this).attr("type","radio");
       alert($(this).attr("type"));
      });
Ответить с цитированием
  #2 (permalink)  
Старый 05.01.2013, 16:19
Профессор
Отправить личное сообщение для zebra Посмотреть профиль Найти все сообщения от zebra
 
Регистрация: 14.09.2011
Сообщений: 523

Видимо поиск элементов неверен. alert выводится?
Ответить с цитированием
  #3 (permalink)  
Старый 05.01.2013, 16:27
Аспирант
Отправить личное сообщение для NeoMurderer Посмотреть профиль Найти все сообщения от NeoMurderer
 
Регистрация: 16.02.2011
Сообщений: 98

Даже алерт не выводится
Ответить с цитированием
  #4 (permalink)  
Старый 05.01.2013, 16:36
Профессор
Отправить личное сообщение для zebra Посмотреть профиль Найти все сообщения от zebra
 
Регистрация: 14.09.2011
Сообщений: 523

Сообщение от zebra Посмотреть сообщение
Видимо поиск элементов неверен.
...
Ответить с цитированием
  #5 (permalink)  
Старый 05.01.2013, 16:39
Аспирант
Отправить личное сообщение для mullih Посмотреть профиль Найти все сообщения от mullih
 
Регистрация: 05.08.2012
Сообщений: 77

у вас ничего не получится тк вы не просто атрибут меняете, а тип input а, а он read only, могу предложить такой вариант

<html>
<head>
	<script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/jquery/jquery-1.8.2.min.js"></script>

	<script type="text/javascript">
		$().ready(function () {
			$(".form-horizontal").find(".answer").each(function () {
				$(this).replaceWith($('<input type="radio" />'));
			});
		});
  </script>

</head>
<body>
<div class="form-horizontal">
	<input type="button" class="answer" />
	<input type="button" />
	</div>
</body>
</html>


ps кстати у вас и алерт поэтому не появляется, тк скрипт ошибку выкидывает и до алерта дело просто не доходить, хотите увидеть алерт, строку
$(this).attr("type","radio");
смените на
try{$(this).attr("type", "radio");}catch(ex){}

Последний раз редактировалось mullih, 05.01.2013 в 16:43.
Ответить с цитированием
  #6 (permalink)  
Старый 05.01.2013, 16:41
Профессор
Отправить личное сообщение для zebra Посмотреть профиль Найти все сообщения от zebra
 
Регистрация: 14.09.2011
Сообщений: 523

Если есть атрибут readonly , то нельзя сменить тип инпуту?
Ответить с цитированием
  #7 (permalink)  
Старый 05.01.2013, 16:44
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от zebra
Если есть атрибут readonly , то нельзя сменить тип инпуту?
Некоторые браузеры запрещают менять атрибут type в уже вставленном или ранее вставленном в DOM элемент. Например ИЕ это точно запрещает. Насчет других браузеров не уверен.
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #8 (permalink)  
Старый 05.01.2013, 16:45
Профессор
Отправить личное сообщение для zebra Посмотреть профиль Найти все сообщения от zebra
 
Регистрация: 14.09.2011
Сообщений: 523

Сообщение от devote Посмотреть сообщение
Некоторые браузеры запрещают менять атрибут type в уже вставленном или ранее вставленном в DOM элемент. Например ИЕ это точно запрещает. Насчет других браузеров не уверен.
Проверил в фф - все меняет. Странно, что нельзя менять тип в ие
Ответить с цитированием
  #9 (permalink)  
Старый 05.01.2013, 16:47
Аспирант
Отправить личное сообщение для mullih Посмотреть профиль Найти все сообщения от mullih
 
Регистрация: 05.08.2012
Сообщений: 77

Сообщение от zebra Посмотреть сообщение
Если есть атрибут readonly , то нельзя сменить тип инпуту?
а не подскажете, где я написал про html атрибут readonly ?
Ответить с цитированием
  #10 (permalink)  
Старый 05.01.2013, 16:57
Профессор
Отправить личное сообщение для zebra Посмотреть профиль Найти все сообщения от zebra
 
Регистрация: 14.09.2011
Сообщений: 523

Сообщение от mullih
у вас ничего не получится тк вы не просто атрибут меняете, а тип input а, а он read only
вот тут
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
понимать css своиство елемнта (если етого елемента нет прямо заданно атрибут style) dadli Общие вопросы Javascript 3 28.05.2012 00:53
extjs 4 mvc, разбираемся с model & store Lord Daedra ExtJS 1 18.08.2011 22:36
Изменение input type в IE Aljnk Общие вопросы Javascript 4 03.05.2011 18:37
динамические списки Shaci jQuery 0 14.12.2009 15:03
Атрибут "jQuery<циферки>" и IE psu jQuery 6 18.05.2009 11:55