3

jQueryを介してコントローラー(Codeigniter)を呼び出しています。私の dataString 変数には単純な文字列が含まれており、これをコントローラーに渡そうとしているので、モデルに渡すことができます。ただし、$test_var が未定義であることを示すエラーが表示されます。私は何を間違っていますか?

$('a.test').click(function (event) {


    dataString = $(this).attr('name'); 
        $.ajax({
        type:"POST",
        url:"<?php echo base_url(); ?>controller_name/",
        data:dataString,
        success:function (data) {
        alert('test');
        }

    });
    event.preventDefault();
});

コントローラ


$test_var= $this->input->post('dataString');

4

3 に答える 3

3

name=value ペアを使用してみてください:

$('a.test').click(function (event) {


    dataString = $(this).attr('name'); 
        $.ajax({
        type:"POST",
        url:"<?php echo base_url(); ?>controller_name/",
        data:'dataString='+dataString,
        success:function (data) {
        alert('test');
        }

    });
    event.preventDefault();
});
于 2012-11-15T21:41:18.633 に答える
1

代替構文であるこのようなこともできます

$('a.test').click(function (event) {
    dataString = $(this).attr('name'); 
    $.ajax({
        type:"POST",
        url:"<?php echo base_url(); ?>controller_name/",
        data:{'dataString':dataString},
        success:function (data) {
        alert('test');
        }
    });
    event.preventDefault();
});

あなたのコントローラーで$test_var= $this->input->post('dataString');

またはバニラphpのように

$test_var = $_POST['dataString'];
于 2012-11-16T08:42:24.407 に答える
0

このデータのようなデータ オプションを使用します: { name: "John", location: "Boston" } 詳細については、http: //api.jquery.com/jQuery.ajax/ を確認してください。

于 2012-11-24T19:22:11.283 に答える