0

我有一个表单,它在提交时调用 php 脚本将数据插入 MySQL 数据库。我希望 php 脚本的输出返回到灰盒。我无法让它工作,所以我很感激你们可以提供的任何帮助。

我在表单定义上有灰色框调用,见下文,但没有做到这一点。

这是代码的子集:

<script type="text/javascript" src="greybox/AJS.js"></script>
<script type="text/javascript" src="greybox/AJX_fx.js"></script>
<script type="text/javascript" src="greybox/gb_scripts.js"></script>

<div id="content">

<form id="contact_us" name="contact_us" action="contact-greybox.php"  method="POST" onSubmit="return GB_showCenter('Testing', this.action, 500, 500)">
<fieldset>
<label for="employee_id">Employee ID:</label>
<input id="employee_id" name="employee_id" type="number" size="10" /><P />
<label for="employee_name">Employee Name:<strong><br /> (as it should appear on
email) </strong></label>
<input id="employee_name" name="employee_name" type="text"  /><P />
</fieldlist>

<p class="submit"><input type="image" name="submit" value="Submit Form" src="icons/ambas_submit.jpg" boder="0">

</form>
</div>

php 是一个简单的插入到 MySQL 中的语句。

感谢任何帮助

4

1 回答 1

0

graybox 不支持 POST 提交,但一般模式是使用 ajax 提交表单 - 否则您的页面将刷新。

您需要将 onclick( $.submit ) 设置为表单输入,然后在 ajax 调用结束时返回 false:

$('#contact_us').submit(function(){
    //get your inputs here
    var e_id = $.('#employee_id').val();
    //...etc....
    $.post( ...
        //set your data/input fields here:
        data: { id: e_id },
        success: function(response){
            //display the response: this is what you get back from: contact-greybox.php   
        }
    })
    return false;
});

fancybox是一个覆盖框,支持以纯 html 作为参数调用,所以你可以把它放在你的成功函数中:

$.fancybox(response);
...or
$.fancybox(response.html)... etc.
于 2011-02-24T21:56:17.377 回答