我刚刚开始学习HTML.在alert()
我的一个变量上做一个给我这个结果[object HTMLInputElement]
.
如何获取在文本字段中添加的数据,我的输入类型是文本?
Xav*_*ica 26
如果元素是a <input type="text">
,则应查询value
属性:
alert(element.value);
Run Code Online (Sandbox Code Playgroud)
请参阅此jsFiddle中的示例.
此外,看到您开始学习HTML,您可能会考虑使用console.log()
而不是alert()
用于调试目的.它不会中断脚本的执行流程,你可以拥有所有日志的总体视图与开发工具几乎所有浏览器(除了那一个,很明显).
当然,您可以考虑使用像Firebug这样的Web开发工具,它是Firefox的强大插件,提供了许多功能(调试javascript代码,DOM检查器,实时DOM/CSS更改,请求监视). ..)
sim*_*ack 23
假设您的变量是myNode
,您可以myNode.value
检索输入元素的值.
Firebug有一个"DOM"选项卡,显示有用的DOM属性.
另请参阅mozilla页面以获取参考:https://developer.mozilla.org/en-US/docs/DOM/HTMLInputElement
这不是因为你使用了alert,当使用document.write()时也会发生这种情况。当您将任何标签的 id 或类命名为与 JavaScript 代码中使用的任何变量相同时,通常会出现此问题。尝试更改 javascript 变量名称或更改标签的 ID/类名称。
我的代码示例: bank.html
<!doctype html>
<html>
<head>
<title>Transaction Tracker</title>
<script src="bank.js"></script>
</head>
<body>
<div><button onclick="bitch()">Press me!</button></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
JavaScript 代码: bank.js
function bitch(){ amt = 0;
var a = Math.random(); ran = Math.floor(a * 100);
return ran; }
function all(){
amt = amt + bitch(); document.write(amt + "
"); } setInterval(all,2000);
Run Code Online (Sandbox Code Playgroud)
你可以从我的代码中看看并理解这个概念。这里我在 JS 中使用了一个名为“amt”的变量。你只要尝试运行我的代码即可。它会工作得很好,但是当你在 html 正文中为 div 标签添加 [id="amt"](不带方括号)(这是 JS 代码中的变量名称)时,你会看到与你正在讨论的相同的错误。所以简单的解决方案是更改变量名称或 id 或类名称。