PHP生成的表单不提交AJAX


PHP generated form does not submit AJAX

我有一个值中有ROWID,值中有名称的select,

<select name="opcoes"  onchange="showInfo(this.value)">
<option value=''>Select</option>
<option value=6>A</option>
<option value=2>F</option>
<option value=5>L</option>
<option value=1>M</option>
</select>

当你选择一个时,我有这个ajax代码来用php创建一个表单,

    function showInfo(str)
{

if (str=="")
  {
  document.getElementById("fields").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("fields").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","php/vendors/getRow.php?id="+str,true);
xmlhttp.send();
}

接下来,如果选择的值不是",它将转到php,

连接到数据库。。。

echo "<form action='/php/vendors/edit.php' onSubmit='"return confirm('Deseja editar?')'" method='post' >"; 
echo "<td><input type='text' name='editname'   value='".utf8_encode($linha[vendor_name])."'    ></td>";
echo "<td><input type='text' name='editemail'    value='".utf8_encode($linha[vendor_email])."'    ></td>";
echo "<td><input type='text' name='editwebsite'    value='".utf8_encode($linha[vendor_website])."'  ></td>";
echo "<td><input type='text' name='editphone'    value='".utf8_encode($linha[vendor_phone])."'    ></td>";
echo "<td><input type='text' name='editfax'     value='".utf8_encode($linha[vendor_fax])."'     ></td>";
echo "<td><input type='text' name='editadress'    value='".utf8_encode($linha[vendor_adress])."'   ></td>";
echo "<td><input type='text' name='editincharge'   value='".utf8_encode($linha[vendor_incharge])."'  ></td>";
echo "<td class='btn'><input class='edit' type='submit' value=''></td>";
echo "</form>";

它正确地显示了每一个信息,唯一的问题是当我点击输入提交按钮时它没有提交。。。有什么想法吗?

您正在生成无效的HTML。

一个窗体可以包含一整张表。表格单元格可以包含整行。表单不能存在于表内,而是存在于该表中的一组单元格周围。

您的浏览器正在错误恢复,将表单移动到表之后的,但将表单控件留在后面。

这意味着提交按钮不在表单中,因此无法提交表单。

如果在文档中动态加载HTML表单,则它们不会在DOM中注册。试着用jQuery委托jQuery委托来完成这项工作