Как получить значение текстового поля в JavaScript - PullRequest
96 голосов
/ 18 апреля 2009

Я пытаюсь использовать JavaScript для получения значения из текстового поля HTML, но значение не идет после пробела

Например:

<input type="text" name="txtJob" value="software engineer">

Я получаю только «программное обеспечение» из вышеперечисленного. Я использую такой скрипт:

var jobValue = document.getElementById('txtJob').value

Как получить полное значение: «инженер-программист»?

Ответы [ 15 ]

75 голосов
/ 18 апреля 2009

У вашего элемента нет идентификатора, а только имя. Таким образом, вы можете использовать метод getElementsByName(), чтобы получить список всех элементов с таким именем:

var jobValue = document.getElementsByName('txtJob')[0].value  // first element in DOM  (index 0) with name="txtJob"

Или вы назначаете ID для элемента:

<input type="text" name="txtJob" id="txtJob" value="software engineer">
60 голосов
/ 19 апреля 2009

+ 1 Gumbo: «id» - это самый простой способ доступа к элементам страницы. IE (до версии 8) будет возвращать вещи с соответствующим «именем», если он не может найти что-либо с данным идентификатором, но это ошибка.

Я получаю только «программное обеспечение».

id-vs-name не повлияет на это; Я подозреваю, что произошло (вопреки примеру кода) вы забыли процитировать свой атрибут «value»:

<input type="text" name="txtJob" value=software engineer>
11 голосов
/ 31 июля 2011
var word = document.getElementById("word").value;//by id
or
var word = document.forms[0].elements[0].value;//by index
//word = a word from form input
var kodlandi = escape(word);//apply url encoding

alert(escape(word));
or
alert(kodlandi);

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

ontop имеет некоторые проблемы, такие как операции кодирования / декодирования Unicode так используйте эту функцию кодирования строк / массивов

function urlencode( str ) 
{
// http://kevin.vanzonneveld.net3.    
// +   original by: Philip Peterson4.    
// +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)5.    
// *     example 1: urlencode('Kevin van Zonneveld!');
// *     returns 1: 'Kevin+van+Zonneveld%21'7. 
   var ret = str; 
   ret = ret.toString();
   ret = encodeURIComponent(ret);
   ret = ret.replace(/%20/g, '+');
   return ret;
}


ex.
var word = "some word";
word = urlencode(word);
7 голосов
/ 14 сентября 2015
<!DOCTYPE html>
<html>
<body>
<label>Enter your Name here: </label><br>
<input type= text id="namehere" onchange="displayname()"><br>


<script>
function displayname() {
    document.getElementById("demo").innerHTML = 
document.getElementById("namehere").value;
}

</script>


<p id="demo"></p>

</body>
</html> 
4 голосов
/ 18 апреля 2009

Установите атрибут id для input на txtJob. Ваш браузер ведет себя странно, когда вы звоните getElementById.

3 голосов
/ 27 августа 2014

Если вы используете ASP.NET, серверные теги кода в этих примерах ниже предоставят точный идентификатор элемента управления, даже если вы используете главные страницы.

Javascript:

document.getElementById("<%=MyControlName.ClientID%>").value;

JQuery:

$("#<%= MyControlName.ClientID %>").val();
3 голосов
/ 13 ноября 2013

Предоставляется, когда вам нужно значение текстового поля. Простой:

<input type="text" value="software engineer" id="textbox">

var result = document.getElementById("textbox").value;
3 голосов
/ 19 апреля 2009

Если это в форме, то это будет:

<form name="jojo">
<input name="jobtitle">
</form>

Тогда вы бы сказали в javascript:

var val= document.jojo.jobtitle.value

document.formname.elementname
0 голосов
/ 26 февраля 2018

Установить идентификатор для текстового поля. т.е.

<input type="text" name="txtJob" value="software engineer" id="txtJob"> 

В JavaScript

var jobValue = document.getElementById('txtJob').value

В Jquery

 var jobValue =  $("#txtJob").val();
0 голосов
/ 20 ноября 2017

Это должно быть просто, используя jquery:

HTML:

  <input type="text" name="txtJob" value="software engineer">

JS:

  var jobValue = $('#txtJob').val(); //Get the text field value
  $('#txtJob').val(jobValue);        //Set the text field value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...