1

複数のリターンを使用しようとしていますが、コードを壊し続けています。いくつかの例を試しましたが、適切な組み合わせが見つかりません。

これら 2 つの return ステートメントを 1 つに結合するにはどうすればよいですか?

$(".bar").popover({
content: 
    function (){
        return $(this).data('dataObj').status;
        return $(this).data('dataObj').timeline;
    }
});
4

4 に答える 4

11

使用する

function (){
    return $(this).data('dataObj');
}

また

function (){
    // return an array
    return [ $(this).data('dataObj').status, $(this).data('dataObj').timeline ]
}

また

function (){
    // return a associative array
    return { "status": $(this).data('dataObj').status, "timeline": $(this).data('dataObj').timeline }
}

そして、呼び出し元でコンポーネントを処理します。

アップデート

contentパラメーターにpopoverは、引数として文字列が必要です。これを行うことができます。

function (){
    return $(this).data('dataObj').status + " " + $(this).data('dataObj').timeline;
}
于 2013-03-14T14:02:01.930 に答える
4

プラグインが特定のタイプの戻り値(この場合は明らかに文字列)を要求するこの特定のケースは別として、実際にはできません... returnステートメントは関数を終了します。あなたがしなければならないことは、これらの2つの値を含むオブジェクト(または配列)を返すことです-

var status = $(this).data('dataObj').status;
var timeline = $(this).data('dataObj').timeline;
return [status,timeline];

または

var status = $(this).data('dataObj').status;
var timeline = $(this).data('dataObj').timeline;
var returnObj = {'status':status, 'timeline':timeline};
return returnObj;
于 2013-03-14T14:02:38.543 に答える
2

これら2つのアイテムを含むobjext ir配列を返すことができます

$(".bar").popover({
content: 
    function (){
        return 
        {
        status: $(this).data('dataObj').status;
        timeline: $(this).data('dataObj').timeline;
        }
    }
});
于 2013-03-14T14:04:21.880 に答える
0

要素として .status と .timeline を持つ配列を返してみてください。わかりました Lix の方が速かったです。

于 2013-03-14T14:04:01.413 に答える