$.load 中的表单未正确发布 [英] Form inside of $.load not posting correctly

查看:30
本文介绍了$.load 中的表单未正确发布的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

好吧,这就是我得到的,基本上是单击一个按钮并执行以下代码:

Well here's what I got, basically a button is clicked and the following code is executed:

    Readthis = "MonsterRequest.php?id=<?php echo $_REQUEST['id']; ?>&Mon=";
    TestVar = TestVar.replace(/s/g, "");
    Readthis = Readthis + htmlencode(TestVar);
    $('#CenterPiece').load(Readthis); 

除了传递到 Monsterequest.php 之外,一切似乎都按预期工作,帖子没有传递给它自己,页面基本上重新加载它自己,因为它被传递到主要父级......(我是不确定是否是,但 Monsterrequest.php 似乎在它自己的情况下工作得很好,但是加载时它根本无法按预期工作,我完全被难住了.我基本上想在不重新加载页面的情况下发布数据.

Everything seems to work as intended except for when passed to Monsterequest.php, the post isn't being passed onto it's self and the page basically reloads it's self as it was being passed onto the main parent...(I was unsure if it was but monsterrequest.php seems to work perfectly fine on it's own however when loaded it doesn't work as intended at all and I'm completely stumped. I basically want to post data without having the page reloaded.

Monsterrequest.php:http://pastebin.com/fiFjjBZg

Monsterrequest.php: http://pastebin.com/fiFjjBZg

推荐答案

您熟悉 AJAX 吗?如果您已经知道这一点,请原谅我,但如果您不知道:

Are you familiar with AJAX? Forgive me if you know this already, but in case you don't:

Ajax 将数据发布到一个外部 php 文件,该文件处理它接收到的数据,并发回一个答案.它看起来像这样:

Ajax posts data to an external php file, which processes the data it receives, and sends back an answer. It looks like this:

文件 #1:

<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function() {
                $('#Sel').change(function() {
                    var opt = $(this).val();
                    var someelse = 'Hello';
                    var more_stuff = 'Goodbye';
                    $.ajax({
                        type: "POST",
                        url: "receiving_file.php",
                        data: 'selected_opt=' + opt + '&something_else=' +someelse+'&more_stuff='+more_stuff,
                        success:function(data){
                            alert('This was sent back: ' + data);
                        }
                    });
                });
            });
        </script>
    </head>
<body>

<select id = "Sel">
    <option value ="Song1">default value</option>
    <option value ="Song2">Break on through</option>
    <option value ="Song3">Time</option>
    <option value ="Song4">Money</option>
    <option value="Song5">Saucerful of Secrets</option>
</select>

文件 #2:receiving_file.php

FILE #2: receiving_file.php

<?php
    $recd = $_POST['selected_opt'];
    echo 'You chose: ' . $recd;

这篇关于$.load 中的表单未正确发布的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆