【问题标题】:Is data.success javascript, jquery or json?data.success 是 javascript、jquery 还是 json?
【发布时间】:2009-12-10 15:50:44
【问题描述】:

我用谷歌搜索了 data.success,但我找不到正确的文档。 以下 jquery 中的 data.success 是什么?是 javascript、jquery 还是 json?

function remove_row(data){
        if(!data.success)
        return alert(data.error);
        $('#delete_link_'+data.id)
            .closest('li')
            .slideUp('slow',function(){
            $(this).remove();
});

--编辑--

完整的jquery

$(document).ready(subscribers_init);
            function subscribers_init(){
                $('#subscribers li a:first-child')
                    .click(delete_subscriber);
            }
            function delete_subscriber(){
                var id=this.href.replace(/.*=/,'');
                this.id='delete_link_'+id;
                if(confirm('Are you sure you want to delete this subscriber?'))
                    $.getJSON('delete.php?ajax=true&id='+id, remove_row);
                return false;
            }
            function remove_row(data){
                if(!data.success)
                    return alert(data.error);
                $('#delete_link_'+data.id)
                    .closest('li')
                    .slideUp('slow',function(){
                        $(this).remove();
                    });
            }

--编辑2--

删除.php

$id=(int)@$_REQUEST['id'];
echo ( !($id%2) )?
    "{'id':$id,'success':1}":
    "{'id':$id,'success':0,'error':'Could not delete subscriber'}";

HTML

<ul id="subscribers">
<li>
<a href="delete.php?id=3">[x]</a>
<a href="user.php?id=3">Albertus Ackleton</a>
</li>
<li>
    <a href="delete.php?id=6">[x]</a>
    <a href="user.php?id=6">Bob Burry</a>
</li>
...
    ...
</ul>

【问题讨论】:

  • remove_row 是从哪里调用的?在不知道的情况下,我们不能告诉你......

标签: javascript jquery ajax json


【解决方案1】:

这看起来像是 jQuery Ajax 调用之后的回调。传入的“数据”对象是 ajax 调用的结果,但其类型将取决于您在 ajax 调用中要求的响应类型。您可以指定一个 ajax 请求以返回 json、xml、html、文本等——“数据”将包含结果。

但是,在这种情况下,根据使用情况,Ajax 调用似乎返回了 JSON,jQuery 已将其转换为 javascript 对象(以便您可以调用它的属性,例如“成功”)。

【讨论】:

    【解决方案2】:

    我猜“成功”只是数据对象的一个​​属性,比如一个标志。删除一行时,先在服务器端做,设置标志。然后此函数会删除该行或根据此标志显示错误消息。

    【讨论】:

      【解决方案3】:

      成功是请求 (delete.php) 返回的 JSON 数据的一部分

      【讨论】:

        猜你喜欢
        • 2011-05-06
        • 2011-10-27
        • 2012-06-15
        • 1970-01-01
        • 1970-01-01
        • 2019-05-02
        • 1970-01-01
        • 2020-04-14
        • 1970-01-01
        相关资源
        最近更新 更多