html javascript变量从文本输入null

时间:2016-05-19 01:26:14

标签: javascript html

所以基本上我试图获取一个在主体的文本输入框中输入的名称,以在脚本中的警报中显示,但它总是将名称显示为null或者如果我将.value放在结尾处。 document.getElementById(“name”)它不显示任何内容。我很困惑,因为在我看到的所有教程中,它总是说就像我做的那样......

这是我正在使用的代码:

<!DOCTYPE html>
<html>
<script>
var name = document.getElementById("name");
function showName()
{
alert ("Your name: " + name)
}
</script>
<body>
<form name = "form">
Please enter your full name <input type = "text" id = "name"><br>
<input type = "button" value = "show name" onclick = "showName()">
</form>
</body>
</html>

6 个答案:

答案 0 :(得分:0)

试试这个

<!DOCTYPE html>
<html>
<body>
<form name = "form">
Please enter your full name <input type="text" id="name" value=""><br>
<input type = "button" value="show name" onclick="showName()">
</form>
<script>
function showName() {
  var name = document.getElementById("name").value;
  alert ("Your name: " + name);
}
</script>
</body>
</html>

答案 1 :(得分:0)

您需要对代码进行一些调整:

<!DOCTYPE html>
<html>
<body>
     <form name = "form">
          Please enter your full name <input type = "text" id = "name"><br>
          <input type = "button" value = "show name" onclick = "showName()">
     </form>

<script>

    function showName()
    {
         var name = document.getElementById("name");
         alert ("Your name: " + name.value);
    }
</script>
</body>
</html>

首先:将您的函数放到html代码的末尾,以确保您可以读取元素“name”。

第二个:您需要在用户点击按钮时获取该元素,如果您在获得该元素之前获取该元素,则该元素存在。

第三:当您获得元素时,您将获得一个对象,为了获取该值,您需要调用此对象的属性值。

第四:始终验证您的变量是否包含内容或存在。

答案 2 :(得分:0)

function showName()
{
var name = document.getElementById("name");
alert ("Your name: " + name.value);
}

像这样。

答案 3 :(得分:0)

你需要.value,因为你想要输入值并且还将你的获取id名称移动到你的函数中。因为你的获取id在函数之外,所以它总是会返回undefined初始状态值什么都不是..

<script>    
function showName()
{
var name = document.getElementById("name");
alert ("Your name: " + name.value);
}
</script>

答案 4 :(得分:0)

您需要将变量声明var name = document.getElementById("name");放入函数function showName()中,以便在变量获取值时分配实际值。

检查此fiddle

希望有所帮助

答案 5 :(得分:0)

而不是

var name = document.getElementById("name");

使用

var name = document.getElementById("name").value;
alert('Your name: ' + name);

希望这有帮助!