Javascript函数是否不起作用?

Javascript函数是否不起作用?,javascript,Javascript,我正在使用javascript匹配两个文本框值,但我的函数不起作用 这是我的密码: <script> function validatePassword() { var newPassword = document.getElementById('newPasswordTB').value; var confirmPassword =document.getElementById('confirmPasswordTB').value;

我正在使用javascript匹配两个文本框值,但我的函数不起作用

这是我的密码:

<script>
    function validatePassword() {

        var newPassword = document.getElementById('newPasswordTB').value;
        var confirmPassword =document.getElementById('confirmPasswordTB').value;

        if(newPassword != confirmPassword) {
            newPassword.value="";
            confirmPassword.value="";
            document.getElementById('newPasswordTB').focus();
            document.getElementById("confirmPasswordTB").innerHTML = "not same";
        }
    }
</script>

<label>New Password</label>
<input type="password" name="newPassword" id="newPasswordTB"  class="txtField"/><span id="newPassword" class="required"></span>

<label>Confirm Password</label>
<input type="password" name="confirmPassword" id="confirmPasswordTB" class="txtField"/><span id="confirmPassword" class="required"></span>

<input type="submit" name="submit" value="Submit" class="btnSubmit" onclick="validatePassword()">
如果newpassword和confirmpassword不相同,我想显示一条消息。 我在这个代码中哪里错了

任何帮助都将不胜感激。

您不能使用innerHTML更改文本框的内容,因为它不包含任何HTML,如DIV、SPAN或类似内容。它被称为元素。此外,它是一个密码,因此如果您在其中输入一个值,用户将无法看到它。你应该把你的信息放在任何其他地方。例如,在confirmPasswordTB输入旁边的SPAN元素中:

function validatePassword() {
  var newPassword = document.getElementById('newPasswordTB').value;
  var confirmPassword =document.getElementById('confirmPasswordTB').value;

  if(newPassword != confirmPassword) {
    newPassword.value="";
    confirmPassword.value="";
    document.getElementById('newPasswordTB').focus();
    document.getElementById("confirmPassword").innerHTML = "not same"; //Setting message in the SPAN tag
  }
}

你可以在这把小提琴中检查它是否工作:

什么不工作?-实际上发生了什么不应该发生的事情?你能发布你的HTML吗?你需要为我们发布你的HTML代码来帮助你。此外,设置密码字段的innerHTML仍然会给你一些小点,因此没有人能够阅读你返回的消息…你有一个提交按钮来调用validatePassword函数吗?