可能原因:
可能是后台返回的字符串未转换为json对象。
解决方法:
使用eval("(" + data + ")")把字符串转为json对象,再调用getBrandWCPayRequest
 
微信支付参考代码:
function payByWX(data, successCallback, cancelCallback) {
    call("PayByWX", data, function (result) {
        //alert(JSON.stringify(result.data));
        var data = eval("(" + result.data + ")");
        WeixinJSBridge.invoke('getBrandWCPayRequest', data, function (res) {
            //alert(JSON.stringify(res));
            if (res.err_msg == "get_brand_wcpay_request:ok") {
                if (successCallback != undefined) {
                    successCallback(res);
                }
            }
            else if (res.err_msg == "get_brand_wcpay_request:cancel") {
                showWarning("支付取消", "提示", function () {
                    if (cancelCallback != undefined) {
                        cancelCallback(res);
                    }
                });
            }
            else if (res.err_msg == "get_brand_wcpay_request:fail") {
                alert(res.err_desc);
            }
        });
    });
 
}