0

这是我的问题.. 我有一些想要运行的 JavaScript,但是每次插入它时我都需要它是唯一的。我尝试向它添加一个会改变它的变量,但是它只会在第一次调用/显示时改变它。这是脚本:

     <script type=\"text/javascript\">
                    function validate_f( )
                    {
                    var x=document.forms[\"fill\"][\"textfield\"].value
                    if (x==null || x==\"\")
                      {
                      alert(\"Field cannot be empty\");
                      return false;
                      }
                    }
                    </script>

实际的表单代码是:

                    echo "<td width=\"10%\">
                <form method=\"POST\"action=\"$actual_link\" id=\"fill\" onsubmit=\"return validate_f( );\">
                <input type=\"hidden\" value=\"{$data['id']}\" name=\"id\">
                <input type=\"text\" size=\"20\" class=\"BUTTON_INPUT\" name=\"url\" value=\"\" id=\"textfield\">
                </td>
                <td width=\"1%\">
                <input type=\"Submit\" class=\"BUTTON_FILL\" name=\"fill\" value=\"\">
                </form>

问题是表单会通过不同的链接多次回显,但脚本只会在第一次工作。所以我能想到的唯一解决方案是让 JavaScript 与表单一起回显,并在脚本和表单上更改函数名称。

我希望我想做的事情是有意义的,所以基本上我需要 "function validate_f( )" & "onsubmit=\"return validate_f( );\"" 来改变每个重复/回声..

4

2 回答 2

2

如果您的文本字段在每种形式中,您只能使用这样的一个通用函数,该函数适用于所有表单,无论其 id 是什么

  function validate_f() {
      var x = this['textfield']
      if (!x || !x.value) {
          alert("field cannot be empty")
          return false
      }
      return true;
  }
于 2013-04-11T19:34:24.000 回答
1

我想出了一个解决方案,并认为我会分享它以防有人遇到这个问题。但基本上,被回显/重复的表单在每次重复时都会得到唯一的数据。所以基本上我把那个唯一的值作为函数和表单ID ..现在我回头看很简单它,我只需要认真思考如何获得改变的独特事物。希望这可以帮助某人..

于 2013-04-15T00:56:00.967 回答