使用 Meteor 框架从表单输入中提取数据时出现问题

Issue pulling data from form inputs using Meteor framework

本文关键字:数据 问题 提取 框架 Meteor 表单 输入 使用      更新时间:2023-09-26

我试图创建一个输入表单,该表单将采用您输入的全名并为您显示。我的论坛接受该条目,但它根本不会显示它。这是我的代码:

<head>
  <title>InputForum</title>
</head>
<body>
  {{> Forum}}
</body>
<template name ="Forum">
<form id="frm1" action="form_action.asp">
  First name: <input type="text" name="fname" value="Donald"><br>
  Last name: <input type="text" name="lname" value="Duck"><br><br>
  <input type="submit" value="Submit">
</form> 
<p>Click "Try it" to display the value of each element in the form.</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
</template>

这是我的JS代码

if (Meteor.isClient) {
  Template.Forum.helpers({
    myFunction: function () {
      alert();
      var x = document.getElementById("frm1");
      var text = "";
      var i;
        for (i = 0; i < x.length ;i++) {
          text += x.elements[i].value + "<br>";
    }
    document.getElementById("demo").innerHTML = text;
  }
});
}
if (Meteor.isServer) {
  Meteor.startup(function () {
    // code to run on server at startup
  });
}

我很新,我相信很快我就能自己弄清楚这些事情,但我现在可以帮忙一点。任何答案将不胜感激。

实际代码看起来不错,并且可以单独工作(见下文)。

考虑到这一点,您的 meteor 框架定义函数似乎存在一些问题。检查函数是否已定义以及是否实际调用(在函数中使用alert(),并查看它是否在单击时显示。

var myFunction = function () {
      var x = document.getElementById("frm1");
      var text = "";
      var i;
        for (i = 0; i < x.length ;i++) {
          text += x.elements[i].value + "<br>";
    }
    document.getElementById("demo").innerHTML = text;
}
<form id="frm1" action="form_action.asp">
  First name: <input type="text" name="fname" value="Donald"><br>
  Last name: <input type="text" name="lname" value="Duck"><br><br>
  <input type="submit" value="Submit">
</form> 
<p>Click "Try it" to display the value of each element in the form.</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>