2016-03-10 2 views
0

Я искал все, что могу. Я пытаюсь изменить текст поля ввода, используя его имя. Я нашел много способов сделать это по ID, например:Изменить поле ввода захвата NAME

<script> 
    function changeValue(o){ 
document.getElementById('type').value=o.innerHTML; 
} 
</script> 

<button id="technician" onclick="changeValue(this)">Technician</button> 
<button id="developer" onclick="changeValue(this)">Developer</button> 
<input type="text" id="type" name="type" value="change" /> 

Но я должен выполнить это для ввода без идентификатора.

Что-то вдоль линий:

<script> 
    function changeValue(o){ 
document.getElementsByName('NAME').value=o.innerHTML; 
} 
</script> 

<button id="technician" onclick="changeValue(this)">Technician</button> 
<button id="developer" onclick="changeValue(this)">Developer</button> 
<input type="text" name="NAME" value="change" /> 

Есть ли способ достичь этого?

UPDATE

Я пытаюсь расширить на JavaScript, вы, ребята помогли мне.

сниппете:

<script> 
function changeValue(o){ 
    document.getElementsByName('NAME')[0].value=o.innerHTML; 
} 
</script> 

<span onclick="changeValue(this)" style="cursor: pointer;">One</span> 
<span onclick="changeValue(this)" style="cursor: pointer;">Two</span> 
<img src='image.gif' onclick="changeValue(this.src)" /> 

<input type="text" name="NAME" value="SOMETHING"> 

Пролеты работают правильно, хотя я на самом деле не нужны. Когда я это выясню, у меня появятся все образы.

Я пробовал несколько способов, но то, что я могу найти, напрямую не связано с моим использованием.

Конечная цель состоит в том, чтобы получить img src в текстовый ввод с помощью js, предпочтительно в некоторой степени, как он уже существует. Я чувствую, что это действительно близко.

ответ

2

getElementsByName() возвращает коллекцию. использовать [] для доступа к отдельным элементам

экс:

function changeValue(o){ 
    document.getElementsByName('NAME')[0].value=o.innerHTML; 
} 
+0

Спасибо за быстрый ответ, именно так я его искал. Несколько минут еще до того, как я смогу принять это. Но отлично работает! –

+0

, чтобы развернуть это, как я могу использовать img и хватать только его src? does not work =/ –

+0

Я предполагаю, что я не полностью понял, я искал некоторые из них, и я просто не могу заставить его работать. Im рывка кнопки, и охватывает конечной целью, чтобы изображения выполняли ту же функцию, что и кнопки. Я обновил оригинальный пост. –

2

document.getElementsByName('NAME') возвращает список элементов по названию. Вы должны обеспечить индекс, как

document.getElementsByName('NAME')[0].value=o.innerHTML 
+0

Спасибо за быстрый ответ, этот метод работал, как Шарм. –

0

JQuery путь

$('input[name="NAME"]').val("im changed!") 
1

Использование document.querySelector как так

document.querySelector('input[name="NAME"]').value = o.innerHTML; 
+0

Каковы преимущества использования этого метода? –

+0

Это позволяет вам настроить таргетинг на ввод по имени, которое вы запрашивали – gabesoft

+0

querySelector VS. getElementsByName? –

Смежные вопросы