1

我有一个文本区域,用户可以在其中输入 ID 为“code_box”的代码。

<textarea id = 'code_box'></textarea>

然后我有这个 jQuery,它使用 ajax 将代码发送到我处理它的 PHP 脚本。

$('#submit_button').click(function() {
    var code= $('#code_box').val();

    if(code.length > 0) {
        $.ajax ({
            type: 'POST',
            url: '/php/handle_code.php',
            cache: false,
            data: 'code=' + encodeURIComponent(code),
            success: function(output) {
                window.location = output;
            }
        });
    }
});

但是,当尝试发送代码时,它实际上并没有发送它。我已经验证了“粘贴”变量中有代码。我还验证了 $_POST['code'] 变量在 PHP 端实际上没有收到任何东西,所以问题一定出在 ajax 请求中。其他输入工作,例如纯文本,它可以正常工作。在使用 ajax 将代码发送到 PHP 脚本之前,我还需要做些什么来清理代码吗?

编辑:这是一些可以通过的代码:

This is plain text.

这里有一些没有:

<?php
    echo "test";
?>
4

2 回答 2

2

我认为您没有以 ajax 需要的正确方式发送数据:

$('#submit_button').click(function() {
    var code = encodeURIComponent($('#code_box').val());

    if(code.length > 0) {
        $.ajax ({
            type: 'POST',
            url: '/php/handle_code.php',
            cache: false,
            data: {code:code},
            success: function(output) {
                window.location = output;
            }
        });
    }
});

试试这个,未经测试,但可能对您有所帮助。

资料:http ://api.jquery.com/jQuery.ajax/

于 2013-01-03T07:27:53.363 回答
0
 var code= $('#paste_box').val();

应该

 var code= $('#code_box').val();
于 2013-01-03T07:11:54.787 回答