从页面外的ajax提交表单(php)

时间:2009-08-03 19:46:09

标签: ajax

我使用JQuery将表单插入到div中,表单位于php文件中。

function show(id){
    var content = $("#layer1_content");
    $("#layer1").show();
var targetUrl = "mouse.php?cat="+id;
content.load(targetUrl);
}

一切正常,但是当我提交时,它会进入那个php页面。如果我在同一个php中调用相同的表单,那么它工作正常。响应由以下方式处理:

$('#layer1_form').ajaxForm({
    target: '#content',
    success: function() 
    {
        $("#layer1").hide();
    }               
});

2 个答案:

答案 0 :(得分:0)

你的问题不是很明确,但我的预感是,如果它不起作用,你实际上是在提交表格。这会导致页面重新加载。

尝试抓取表单并附加取消提交的提交处理程序:

$('form').submit(function(){ return false; }); 

答案 1 :(得分:0)

嘿,谢谢你的回复,我只是以非常便宜的方式解决了这个问题。

我再次尝试解释,我的jquery从如下的php文件中获取内容:

东西....在这里..

这会调出一个弹出的div:

功能秀(id) {var content = $(“#layer1_content”);

            $("#layer1").show();                       

var targetUrl =“mouse.php?cat =”+ id;
 content.load(targetUrl这个);}

这应该提交并发送回来自php“savesettings”的结果

$( '#layer1_form')。给ajaxForm({

目标:'#content',                 成功:功能()                 {                     $( “#层1”)隐藏()。                 }
            });

上面:输出将显示#content。

layer1是保存表单的div。

如果#layer1 div是我的javascript那么,一切正常,#content div接收信息。但是我不能把它放在同一个文件中,因为它会包含很多可能会填满页面的设置。

所以我所做的就是(而且我很确定这是便宜的)

这个,我把所有的东西拿在表格里面,并在外面调用它,这样就可以了,但感觉很便宜:

我输入了新的div 你觉得我的解决方案很可怜吗?