1

我的代码正在工作并将我的文本从文本框带到下一页+我的输入控件通过 js 到下一页但突然出现以下代码中的错误

<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript">
var i=2;
function AddTextbox(){
container.innerHTML=container.innerHTML+'<input type="text" name="'+ i + '">';
i++;
}
</script>

</head>
<body>
<form action="next.php" method="post">
<input type="text" name="1" />
<input type="button" onClick="AddTextbox" name="btn" value="add" />
<input type="submit" name="submit" value="sub" />
<div id="container"></div>
</form>
</body>
</html> 
4

2 回答 2

0
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript">
var i=2;
$(document).ready(function() {
  $('#button').click(function(){
      $('#container').append('<input type="text" name="'+ i + '"><br/>')
      i++;
  });
});
</script>

</head>
<body>
<form action="next.php" method="post">
<input type="text" name="1" />
<input type="button" id="button" name="btn" value="add" />
<input type="submit" name="submit" value="sub" />
<div id="container"></div>
</form>
</body>
</html> 

使用点击功能。这是你需要的吗?

于 2012-05-03T05:33:02.333 回答
0
<html>
  <head>
    <script>
      function addElement(tag_type, target, parameters) {
        //Create element
        var newElement = document.createElement(tag_type);

        //Add parameters
        if (typeof parameters != 'undefined') {
          for (parameter_name in parameters) {
            newElement.setAttribute(parameter_name, parameters[parameter_name]);
          }
        }

        //Append element to target
        document.getElementById(target).appendChild(newElement);
      }
    </script>
  </head>
  <body>
    <div id="targetTag"></div>
    <input type="button" onClick="addElement('INPUT','targetTag',{id:'my_input_tag', name:'my_input_tag', type:'text', size:'5'}); return false;" value="Add Input Tag" />
    <input type="button" onClick="addElement('INPUT','targetTag'); return false;" value="Add Input Tag W/O Parameters" />
  </body>
</html>

注意如果您在 IE 中执行此操作后检查 DOM,您会发现 name 字段对您不可用。IE 将此字段声明为只读,这就是您看不到它的原因。但是,该字段将被正确提交,如以下测试代码所示:

<?php
if (isset($_POST)) {
  print '<pre>'.print_r($_POST,true).'</pre>';
}
?>
<html>
  <head>
    <script>
      function addElement(tag_type, target, parameters) {
        //Create element
        var newElement = document.createElement(tag_type);

        //Add parameters
        if (typeof parameters != 'undefined') {
          for (parameter_name in parameters) {
            newElement.setAttribute(parameter_name, parameters[parameter_name]);
          }
        }

        //Append element to target
        document.getElementById(target).appendChild(newElement);
      }
    </script>
  </head>
  <body>
    <form method="post">
    <div id="targetTag"></div>
    <input type="submit" value="Check"/>
    </form>
    <input type="button" onClick="addElement('INPUT','targetTag',{'id':'my_input_tag', 'name':'my_input_tag', 'type':'text', 'size':'5'}); return false;" value="Add Input Tag" />
    <input type="button" onClick="addElement('INPUT','targetTag'); return false;" value="Add Input Tag W/O Parameters" />
  </body>
</html>
于 2012-05-05T08:26:25.507 回答