使用jquery加载动态外部表单

时间:2010-06-29 21:42:58

标签: php jquery ajax

我希望有人可以帮助我。

当我加载一个生成一组字段的外部php时,我没有问题,但随后我发送生成的表单,我无法访问变量。

我的代码是用户:

用于加载外部文件:

      $.ajax({

    type: "POST",
    url: "product-insert.php",
    contentType: "application/x-www-form-urlencoded",
    global: true,
    processData:true,
    dataType: 'html',
    data: {num_filas: $("#num_filas").val()},

    success: function(html){
             $("#destino").html(html);
             alert(html);
             str = $("ofertas").serialize();
    },

    error: function(){
    },

    complete: function(){
    }
});


  <form action="ofertas.php" method="post" enctype="multipart/form-data" name="form-ofertas" id="ofertas" >

  <div id="destino"></div>

              

加载的文件包含以下代码:

echo '<input name="campo" type="hidden" value="valor" />';

并且接收表单的php文件包含以下代码:

die("campo: ".$_REQUEST['campo']);

我真的很感激你的帮助。

Thnx提前。

的Yannick

2 个答案:

答案 0 :(得分:0)

根据您的评论,您正在检查$_POST['campo'],尽管您的<form>标记的方法是GET请求。您应该检查$_GET['campo'](或$_REQUEST['campo'])的值。

答案 1 :(得分:0)

我猜这里有部分评论,你的表格看起来像这样:

<form action="ofertas.php" method="get" enctype="multipart/form-data" 
 name="form-ofertas" id="ofertas"> 
  <div id="destino"></div> 
</form> 

您的methodGET,如果您要查找POST集合中$_POST集合中的值,则不会显示您所追求的内容确实。只需将表单上的方法更改为method="post"即可使其正常工作,否则请在PHP端使用$_GET,如果GET是您实际执行的操作。

有关GET与POST的良好讨论,请看一下:
When do you use POST and when do you use GET?