在我的视图中使用ajax传递数据 - Laravel

时间:2016-08-08 06:48:30

标签: php jquery ajax laravel

我在使用带有ajax的数据时遇到了一些问题。这是我的代码中的ajax片段:

$('a[data-id]').click(function () {
            var id = $(this).attr('data-id');
            var domain = $(this).attr('data-domain');

            $.ajax({
                url: 'getdata',
                type: 'GET',
                dataType: 'json',
                data: {id: id, domain: domain, tld: tld},
                success: function (data) {
                    $('.resultdomain').html(data);
                    console.log(data);
                }
            });
        });

在我的控制器就是这样:

public function getData(Request $req)
    {
        $getdomain = Domains::where('id', '=', $req['id'])->first();
        return $getdomain;
    }

因此,如果我使用console.log(数据),我将获得一个包含我需要的所有数据的对象。例如(从我的控制台复制粘贴):

Object { id: "5", cus_id: "1", name: "hello-from-the-other-site", tld: ".com", ...... } 

那很好,但我也想使用它,我无法弄清楚如何。

我想打印域名+ tld。和其他一些事情。

类似的东西:

域:(这里我想成为名字+ tld)。 创建数据:(日期) 客户ID =(cus_id)。

感谢您的帮助,抱歉我的英语不好:-)

目前的ajax代码:

 $('a[data-id]').click(function () {
            var id = $(this).attr('data-id');
            var domain = $(this).attr('data-domain');

            $.ajax({
                url: 'getdata',
                type: 'GET',
                dataType: 'json',
                data: {id: id, domain: domain, tld: tld},
                success: function (data) {
                    var domain = data.name + data.tld;
                    $('.resultdomain').html(domain);
                }
            });
        });

在我看来:

Domain: <div class="resultdomain"></div>

2 个答案:

答案 0 :(得分:1)

您的dataobject。您可以直接访问属性并创建您想要的字符串。所以在你的success回调中你可以这样做:

var data = {
    id: "5",
    cus_id: "1", 
    name: "hello-from-the-other-site", 
    tld: ".com"
};

var domain = data.name + data.tld;
$('.resultdomain').html(domain);
console.log("My Domain: " + domain);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="resultdomain"></div>

答案 1 :(得分:0)

在您的JS代码中,success函数需要类似以下内容:

success: function (data) {
  $('.resultdomain').html(data.name + data.tld);
}