0

次のように、HTML文字列(outStr)を構築しているjQuery関数があります。

    function ShowUserInfo()
    {
        var userId = $("#users").val();
        if (userId == -1)
        {
            $("#userInfo").hide();
        }
        else
        {
            $.getJSON('Services/foobar.svc/GetUserById?userId=' + userId,
                function (data) {
                    var outStr = "";
                    $.each(data, function (index, elem) {
                        //var d = new Date(elem.DateOfBirth);
                        outStr += "<div class=\"user\">" +
                                "   <h3>" + elem.Forename + " " + elem.Surname + "</h3>" +
                                "   <p>Date of birth: " + elem.DateOfBirth + "</p>"
                    });
                    outStr += "<h4>Associated items</h4>"
                    outStr += [*** To do: add results from function ShowUserItemInfo ***];
                    outStr += "</div>"
                    $("#userInfo").show().html(outStr);
                }
            );
        }
    }

*やること*の部分に注意してください:これは私が問題を抱えているところです。同様の方法でHTML文字列を作成する別の関数(ShowUserItemInfo)があります。私が欲しいのは、その関数を呼び出して、結果のHTML文字列をoutStrに追加できるようにすることです。

しかし、私はそれを機能させることができません。

4

1 に答える 1

0

ShowUserItemInfo単純に文字列を返す場合は、このようにメソッドを呼び出すだけです。

outStr += ShowUserItemInfo();

関数は次のようになると思います。

function ShowUserItemInfo(){
    return "<div>Hello world</div>"
}
于 2012-10-21T16:00:37.060 に答える