Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 11.03.2015, 09:59
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

alexan0308,var inputs убрано,newInput вынесено за цикл.
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body><span class="dynamic">1</span>
<span class="dynamic">2</span>
<span class="dynamic">3</span>
<span class="dynamic">4</span>
<span class="dynamic">5</span>
<script>
var elems = document.getElementsByClassName("dynamic"),
 newInput = document.createElement("input");
            newInput.type = "text";
            newInput.maxLength = 1;
            newInput.setAttribute("size", 1);
            newInput.style.width = "12px";
            newInput.addEventListener("blur", function() {
            newInput.parentNode.innerHTML = newInput.value ;}
            , false);
for (var i=0; i<elems.length; i++) {
    var el = elems[i];
    el.addEventListener("click", function() {
        if (this.children.length) return;
        newInput.value = this.innerHTML;
        this.innerHTML = "";
        this.appendChild(newInput);
        newInput.focus();
        newInput.select()
		}.bind(el), false);
	};
</script>



</body>

</html>

Последний раз редактировалось рони, 11.03.2015 в 10:03.
Ответить с цитированием
  #12 (permalink)  
Старый 11.03.2015, 13:31
Профессор
Отправить личное сообщение для alexan0308 Посмотреть профиль Найти все сообщения от alexan0308
 
Регистрация: 11.04.2011
Сообщений: 207

Теперь со стилями не могу разобраться.
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body><span class="dynamic">1</span>
<span class="dynamic">2</span>
<span class="dynamic">3</span>
<span class="dynamic">4</span>
<span class="dynamic">5</span>
<script>
var elems = document.getElementsByClassName("dynamic"),
 newInput = document.createElement("input");
            newInput.type = "text";
            newInput.maxLength = 1;
            newInput.setAttribute("size", 1);
            newInput.style.width = "12px";
            newInput.addEventListener("blur", function() {
                   newInput.parentNode.innerHTML = newInput.value ;
                   newInput.parentNode.style.fontFamily =  "Arial";
                   newInput.parentNode.style.fontSize =  "20px";
            }, false);
for (var i=0; i<elems.length; i++) {
    var el = elems[i];
    el.addEventListener("click", function() {
        if (this.children.length) return;
        newInput.value = this.innerHTML;
        this.innerHTML = "";
        this.appendChild(newInput);
        newInput.focus();
        newInput.select()
		}.bind(el), false);
	};
</script>



</body>

</html>

Нужно в силу ряда причин указать стиль. Не работают строки
newInput.parentNode.style.fontFamily =  "Arial";
newInput.parentNode.style.fontSize =  "20px";

Последний раз редактировалось alexan0308, 11.03.2015 в 13:36.
Ответить с цитированием
  #13 (permalink)  
Старый 11.03.2015, 13:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

alexan0308,
поменяйте строки 23 и 25 местами -- или сохраните ссылку на newInput.parentNode
var parent = newInput.parentNode;
                   parent.innerHTML = newInput.value ;
                   parent.style.fontFamily =  "Arial";
                   parent.style.fontSize =  "20px";
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вывести значение кнопки в текстовое поле matt_xs Общие вопросы Javascript 10 16.04.2016 14:50
значение checkbox в текстовое поле Alfer Events/DOM/Window 0 20.09.2013 16:03
Активировать текстовое поле если стоит галочка (запара с именами) Гробовщик Events/DOM/Window 9 14.06.2013 10:39
При наведение на форму,она выводится в текстовое поле! unkind Элементы интерфейса 9 07.11.2012 16:52
Как передать данные из jqGrid в текстовое поле? Rooner jQuery 2 27.09.2012 19:31