如何通过AJAX / jQuery传递变量?

时间:2013-07-29 01:13:02

标签: php jquery html css ajax

我想知道如何通过AJAX将变量传递给另一个php文件?

必须传递的变量称为:

$id

问题是'pm_form.php'中的表单无法访问变量'$ id'。

我的脚本看起来像这样(这个脚本触发一个模态窗口,该模态窗口加载一个名为'pm_form.php'的表单):

$(".pm_link").colorbox($.extend(defaults, {
        initialWidth:'348',
        initialHeight:'348',
        innerWidth:'348',
        innerHeight:'348',
        type: "POST",
        href: "<?php echo $setting['site_url'];?>/includes/forms/pm_form.php",

        onComplete: function(){
            $("#cboxLoadedContent").appendTo("#cboxContent");

            var title = 'Send Message';
            $('#cboxTitle').text(title);
        }
    }));

当我点击表单的提交按钮时,变量'$ id'将被传递给相应的php文件。

这是我的表格:

<div id="pm_content" class="modal_font_indent">
<div id="pm_form">
    <form name="form1" method="post" action="<?php echo $setting['site_url']?>/index.php?id=<?php echo $id;?>&task=send_message&done=1">

        <div id="pm_subject" class="form_alt_design">
            <div id="pm_subject_txt"><label for="message_title">Subject:</label></div>
            <input type="text" name="message_title" id="message_title" class="pm_subject_textbox" value="" />
        </div>

        <div id="pm_message" class="form_alt_design">
            <div id="pm_message_txt"><label for="message">Message:</label></div>
            <textarea name="message" cols="50" rows="4" id="message" class="pm_message_textbox"></textarea>
            <div id="pm_chars_left">Characters left:</div>
        </div>    

        <div id="pm_submit">
            <input type="submit" name="Submit" value="" class="pm_button" />
        </div>

    </form>
</div>

请 - 任何帮助?我对jQuery / AJAX了解不多。:(

解决方案:

我只是回应我的$ id ...

href:“/ include /forms / pm_form.php?id =”, ...在我的pm_form.php中,我可以使用$ _GET全局来获取该id参数:

$ id = $ _GET ['id'];

感谢您的帮助!:)

3 个答案:

答案 0 :(得分:1)

要将变量从一个PHP页面传递到另一个PHP页面,您需要使用POST或GET方法。使用POST ['tag of tag']并将其存储在单独的变量中。

EG。 :$ variable1 = $ _POST [name];

答案 1 :(得分:1)

因为您要将值作为POST发送 您可以在另一页中将该值读作$ _POST ['value_from_previous_page'];

这是我用来将表单值发送到另一个页面

function Gonder()
{
    var str = $("form").serialize();
    $.ajax({
        type: "POST",
        url: "other_page.php",
        data: str,
        success: function(data){
            $('#load').fadeOut();
            $('#ShowResult').html(data);
        }
    });
return false;
}

答案 2 :(得分:1)

根据jQuery docs

$.ajax({
  type: "POST",
  url: "some.php",
  data: { name: "John", location: "Boston" }
}).done(function( msg ) {
  alert( "Data Saved: " + msg );
});