jQuery $ .post问题(不向PHP发送变量)

时间:2015-07-23 22:11:37

标签: javascript php jquery codeigniter

我遇到了一个小问题并且正在努力解决它...想知道你是否有任何想法......我已经阅读了很多关于相同问题的stackoverflow帖子,但仍然无法解决我的问题。我在CodeIgniter工作。

我正在尝试使用jQuery($ .post)将变量发送到PHP控制器。这是我的js代码,嵌入到视图中:

$('#testbtn').on('click', function() {
        var orderValue = this.value;
        $.post('http://localhost/codeigniter/welcome/index', {val: 'myValue'}, function(data) {
            alert(data);
        });
    });

以下是控制器中的PHP代码:

$a = isset($_POST['val']) ? $_POST['val'] : 'Not set yet.';
echo $a ;

这是按钮:<button id="testbtn" value="thevalue">button</button>

单击按钮,我收到包含变量和整个页面的html代码的警告消息,但PHP回显没有改变,仍然说:&#34;尚未设置。&#34;

基本上它似乎很容易,但我仍然无法找到错误...

1 个答案:

答案 0 :(得分:0)

如果不深入研究代码,这将有效。

HTML:

<button id="testbtn" value="thevalue">button</button>

使用Javascript:

$('#testbtn').on('click', function() {
        var orderValue = {"orderValue": $(this).val()};
        $.ajax({
        url: 'http://localhost/codeigniter/welcome/index',
        method: 'POST',
        data: orderValue,
        success: function(data) { alert(data); }
    });

PHP:

public function index() {
    $a = isset($_POST['orderValue']) ? $_POST['orderValue'] : 'Not set yet.';
    return a;
}

如其他评论所述,这可能不是最好的做法。