我正在尝试使用luhn算法编写信用卡验证脚本,但是我什至无法操纵字符串输入权来开始自己的工作。只是试图从字符串中删除连字符和空格,但它在调试器中一直说我的函数没有replace方法?我不是程序员,只是尝试通过此类。

这是我的代码,出于测试目的,可能有一行或两行被我忘记删除了。

<script type="text/javascript">

  function fixString(){

    //get credit card number
    var ccNumber = document.getElementById("ccNumber");

    //remove hyphens and spaces
    var ccNumber = ccNumber.replace(/-/g, "");
        //.replace(/\n/g, "");



    show.innerHTML = ccNumber.value;

  }

</script>

 <body>
<form action="#">
  <p><label>Enter credit card number here:<input id="ccNumber" type="text">
    </label> <input value="Validate" onclick="fixString()" type="button"> </p>
</form>
<p id="show"></p>

</body>

最佳答案

您绝对有正确的想法,并在正确的轨道上!

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

这只是获取元素。它没有值(value)。

你要这个。
var ccNumber = document.getElementById("ccNumber").value;

然后在这里show.innerHTML = ccNumber.value;,因为.value是字符串,所以删除ccNumber

09-30 21:57