Javascript 如何将拉链传递到按钮功能?

Javascript 如何将拉链传递到按钮功能?,javascript,Javascript,我确实用一个submit按钮将其包装在一个表单中,但意识到它试图在不执行逻辑的情况下转到一个新页面。如何将邮政编码传递给onclick button事件?如果这是完全错误的,您能否提供有关如何正确执行此操作的指导 <input type="text" placeholder="Zip Code" pattern="[0-9]{5}" name="zip" required /> <button id="checker">Go!</button> <s

我确实用一个submit按钮将其包装在一个表单中,但意识到它试图在不执行逻辑的情况下转到一个新页面。如何将邮政编码传递给onclick button事件?如果这是完全错误的,您能否提供有关如何正确执行此操作的指导

<input type="text" placeholder="Zip Code" pattern="[0-9]{5}" name="zip" required />

<button id="checker">Go!</button>

<script>
  var b = document.getElementById("checker");

  b.addEventListener("click", function checkZipCode(zip) {

        var zipCodes = [26505, 26501, 26507, 26506];

        for (i = 0; i <= zipCodes.length - 1; i++) {
          if (zip == zipCodes[i]) {
            alert("YES");
            break;
          }
        }
      }
</script>

走!
var b=document.getElementById(“检查器”);
b、 addEventListener(“单击”,函数检查ZipCode(zip){
变量zipCodes=[26505265012650726506];

对于(i=0;i您需要获取输入值,您可以使用
document.querySelector('[name=“zip”]')。value

var b=document.getElementById(“checker”);
b、 addEventListener(“单击”,函数检查ZipCode(zip){
var zip=document.querySelector('[name=“zip”]')。值;
变量zipCodes=[26505265012650726506];

对于(i=0;i只需使用
getElementById('ELEMENT\u NAME\u HERE')。值类似于:


var b=document.getElementById(“检查器”);
b、 addEventListener(“单击”,函数检查ZipCode(zip){
console.log('Clicked');
var enteredZip=document.getElementById(“zip”).value;
console.log(enteredZip);
变量zipCodes=[26505265012650726506];

对于(i=0;i基本上,如果此myfunction()将返回false,则不会提交表单; 此外,这仅在提交表格时执行


输入名称:


myfunction(){
如果(/*某些条件*/)
{
返回false;
}
也不需要考虑,因为你看起来很新,这里的人给了你非常正确但具体的解决方案。

如果您将一个按钮添加到inside标记中,则单击该按钮即可提交表单。
这就是为什么许多人使用一个看起来像css按钮的div。主要是一个干净的解决方案来覆盖按钮submit,也可以通过Javascript简单地提交表单。

不确定为什么没有将其添加到代码中,除了输入没有IDExcept外,添加id是最干净的方法。为什么是ad用“最干净的方式”定义ID?不需要在DOM中添加任何内容。也不需要使用脏属性值。脏属性值?它们是什么?@j08691我想你也建议VSO给出答案,但他的真正问题是其他问题。我不想只为他写整个答案。
  <script>
    var b = document.getElementById("checker");

    b.addEventListener("click", function checkZipCode(zip){

        console.log('Clicked');
        var enteredZip = document.getElementById("zip").value; 
        console.log(enteredZip);
        var zipCodes=[26505, 26501, 26507, 26506];

        for(i=0; i<=zipCodes.length-1; i++){
            if(zip == zipCodes[i]){
                alert("YES");
                break;
            }}}); 
</script>   
<form onsubmit="myFunction()">
  Enter name: <input type="text">
  <input id='input-id' type="submit">
</form>
<script>
myfunction(){

if(/*some condition*/)
{
return false; 
}
  </script>