如何使用JavaScript获取文本输入字段的值?
我正在使用JavaScript进行搜索。我会使用表单,但它会把我页面上的其他内容弄乱。我有这个输入文本字段:如何使用JavaScript获取文本输入字段的值?,javascript,dom,html-input,Javascript,Dom,Html Input,我正在使用JavaScript进行搜索。我会使用表单,但它会把我页面上的其他内容弄乱。我有这个输入文本字段: <input name="searchTxt" type="text" maxlength="512" id="searchTxt" class="searchField"/> 这是我的JavaScript代码: <script type="text/javascript"> function searchURL(){ window.locati
<input name="searchTxt" type="text" maxlength="512" id="searchTxt" class="searchField"/>
这是我的JavaScript代码:
<script type="text/javascript">
function searchURL(){
window.location = "http://www.myurl.com/search/" + (input text value);
}
</script>
函数searchURL(){
window.location=”http://www.myurl.com/search/“+(输入文本值);
}
如何将文本字段中的值转换为JavaScript?有多种方法可以直接获取输入文本框值(无需将输入元素包装到表单元素中): 方法1:
document.getElementById('textbox\u id')。value
获取
想要的盒子
例如,document.getElementById(“searchTxt”).value代码>
注意:方法2、3、4和6返回元素的集合,因此使用[整数]获得所需的匹配项。对于第一个元素,使用[0],
第二次使用,等等
方法2:
使用
document.getElementsByClassName('class\u name')[整数].value
返回一个实时HTMLCollection
例如,document.getElementsByClassName(“searchField”)[0]。值代码>如果这是页面中的第一个文本框
方法3:
使用document.getElementsByTagName('tag_name')[整数].value
,它还返回一个实时HTMLCollection
例如,document.getElementsByTagName(“输入”)[0]。值代码>,如果这是页面中的第一个文本框
方法4:
document.getElementsByName('name')[整数].value
它还>返回一个活动节点列表
例如,document.getElementsByName(“searchTxt”)[0]。值代码>如果这是页面中第一个名为“searchtext”的文本框
方法5:
使用功能强大的document.querySelector('selector').value
,它使用CSS选择器来选择元素
例如,document.querySelector('searchTxt').value代码>由id选择
document.querySelector('.searchField').value代码>按类别选择
document.querySelector('input')。值代码>由标记名选择
document.querySelector('[name=“searchTxt”]').value代码>按名称选择
方法6:
document.querySelectorAll('selector')[whole\u number].value
它也使用CSS选择器来选择元素,但它以静态节点列表的形式返回带有该选择器的所有元素
例如,document.querySelectorAll('#searchTxt')[0].value代码>由id选择
document.querySelectorAll('.searchField')[0]。值代码>按类别选择
document.querySelectorAll('input')[0]。值代码>由标记名选择
document.querySelectorAll('[name=“searchTxt”]')[0]。值代码>按名称选择
支持
浏览器方法1方法2方法3方法4方法5/6
IE6 Y(童车)N Y Y(童车)N
IE7 Y(童车)N Y Y(童车)N
IE8 Y N Y Y(童车)Y
IE9 Y(童车)Y
IE10-Y-Y
FF3.0 Y=Internet Explorer
FF3.5/FF3.6 Y FF=Mozilla Firefox
FF4b1 Y GC=谷歌浏览器
一般条款4/5 Y=是,N=否
Safari4/Safari5 Y
操作10.10/
操作10.53/Y(童车)Y
操作10.60
歌剧12年
有用的链接
试试这个
<input type="text" onkeyup="trackChange(this.value)" id="myInput">
<script>
function trackChange(value) {
window.open("http://www.google.com/search?output=search&q=" + value)
}
</script>
函数跟踪更改(值){
窗口打开(“http://www.google.com/search?output=search&q=“+价值)
}
您应该能够键入:
var input=document.getElementById(“searchTxt”);
函数searchURL(){
window.location=”http://www.myurl.com/search/“+输入值;
}
您还可以通过标签调用名称,如下所示:form\u name.input\u name.value代码>
因此,您将以特定的形式获得已确定输入的特定值
//creates a listener for when you press a key
window.onkeyup = keyup;
//creates a global Javascript variable
var inputTextValue;
function keyup(e) {
//setting your input text to the global Javascript Variable for every key press
inputTextValue = e.target.value;
//listens for you to press the ENTER key, at which point your web address will change to the one you have input in the search box
if (e.keyCode == 13) {
window.location = "http://www.myurl.com/search/" + inputTextValue;
}
}
如果您使用的是jQuery,那么通过使用插件formInteract,您只需执行以下操作:
// Just keep the HTML as it is.
<input name="searchTxt" type="text" maxlength="512" id="searchTxt" class="searchField"/>
或者,如果使用参数化URL,则使用以下选项:
$.get("http://www.myurl.com/search/"+search.get().searchTxt, {}, function(rsp){
// Now do work with your response;
})
这是该项目的链接
您可以将此插件用于多种用途,如获取表单的值、将值放入表单、表单验证等。您可以在项目的index.html文件中看到一些代码示例
当然,我是这个项目的作者,欢迎大家把它做得更好。我会创建一个变量来存储输入,如下所示:
var input = document.getElementById("input_id").value;
然后我将使用变量将输入值添加到字符串中
=“您的字符串”+输入代码>在Chrome和Firefox中测试:
按元素id获取值:
<input type="text" maxlength="512" id="searchTxt" class="searchField"/>
<input type="button" value="Get Value" onclick="alert(searchTxt.value)">
在表单元素中设置值:
<form name="calc" id="calculator">
<input type="text" name="input">
<input type="button" value="Set Value" onclick="calc.input.value='Set Value'">
</form>
另请看一看JavaScript计算器实现:
从@bugwheels94更新:使用此方法时请注意。
信息技术
函数myFunction(){
document.getElementById(“新”).value=“a”;
}
可以使用form.elements获取表单中的所有元素。如果元素具有id,则可以使用.namedItem(“id”)找到它。例如:
var myForm = document.getElementById("form1");
var text = myForm.elements.namedItem("searchTxt").value;
var url = "http://www.myurl.com/search/" + text;
来源:当您有更多输入字段时,可以使用onkeyup。假设您有四个或多个输入
<
<input id="new" >
<button onselect="myFunction()">it</button>
<script>
function myFunction() {
document.getElementById("new").value = "a";
}
</script>
var myForm = document.getElementById("form1");
var text = myForm.elements.namedItem("searchTxt").value;
var url = "http://www.myurl.com/search/" + text;
<div class="container">
<div>
<label for="">Name</label>
<input type="text" name="fname" id="fname" onkeyup=handleInput(this)>
</div>
<div>
<label for="">Age</label>
<input type="number" name="age" id="age" onkeyup=handleInput(this)>
</div>
<div>
<label for="">Email</label>
<input type="text" name="email" id="email" onkeyup=handleInput(this)>
</div>
<div>
<label for="">Mobile</label>
<input type="number" name="mobile" id="number" onkeyup=handleInput(this)>
</div>
<div>
<button onclick=submitData()>Submit</button>
</div>
</div>
<script>
const data={ };
function handleInput(e){
data[e.name] = e.value;
}
function submitData(){
console.log(data.fname); //get first name from object
console.log(data); //return object
}
</script>
function copytext(text) {
var textField = document.createElement('textarea');
textField.innerText = text;
document.body.appendChild(textField);
textField.select();
document.execCommand('copy');
textField.remove();
}
<form onsubmit="submitLoginForm(event)">
<input type="text" name="name">
<input type="password" name="password">
<input type="submit" value="Login">
</form>
<script type="text/javascript">
function submitLoginForm(event){
event.preventDefault();
console.log(event.target['name'].value);
console.log(event.target['password'].value);
}
</script>
searchTxt.value