<html>
<head>
<meta charset="utf-8"/>
<script src="../JQUERY/jquery-1.11.0.js"></script>
<script>
function getOptions()
{
    var html=new String();

    $.ajax(
    {  
        //url: 'http://server.com/?method=get&search=menu_group_options_with_items&type=group&group_id=6&format=json', 
        url: 'http://server.com',
        data:
        {
            'method': 'get',
            'search': 'menu_group_options_with_items',
            'type': 'group',
            'place_id': '6',
            'format': 'json'
        },
        dataType: 'jsonp',
        async: false,
        success: function (data) 
        { 
            alert("function");
            //var data = JSON.parse(data);
            var h=new String();
            for(var i=0;i<data.length;i++)
            {
                h+='<div class="data">';

                h+=data[i]['group_option'].OptionsID+'<br>';
                h+=data[i]['group_option'].MenuGroupID+'<br>';
                h+=data[i]['group_option'].group_options_name+'<br>';
                h+=data[i]['group_option'].menu_group_option_information+'<br>';
                h+=data[i]['group_option'].menu_group_option_min_selected+'<br>';
                h+=data[i]['group_option'].menu_group_option_max_selected+'<br>';
                h+=data[i]['group_option'].fDateAdded+'<br><br><br>';

                for(var iter = 0; iter < data[i]['group_option']['group_option_items'].length; iter++)
                {

                    h+=data[i]['group_option']['group_option_items'][iter]['item'].OptionItemID+'<br>';
                    h+=data[i]['group_option']['group_option_items'][iter]['item'].menu_item_option_name+'<br>';
                    h+=data[i]['group_option']['group_option_items'][iter]['item'].menu_item_option_additional_cost+'<br>';
                    h+='<br><br><br>';
                }   
                h += '</div>';
            }
            alert("h");
            alert(h);   
            alert("html equals ");
            html=h; 
            alert(html);

        }

    });
    alert("returning html");
    alert(html);
    return html;
}
</script>
<script>
$(document).ready(function()
{
    var str="";
    str=getOptions();
    $('#content').append(str);  
});
</script>
</head>
<body>
<div id="content"></div>
</body>
</html>

当我使用完整的URL运行它时,什么也不会发生。 我不会得到任何信息。 现在,我仅将URL更改为http://server.com ,并将data:{}设置为URL的要求,但我仍然一无所获。 在这一点上,我被困住了,不知道还要去哪里。

我的问题:

  1. 我的代码无法正常工作的原因是什么?

  2. 从网站检索数据我还需要做什么?

===============>>#1 票数:0

jQuery 1.8之后不推荐使用async:false 可以使用旧版jQuery更改代码。

要更改代码,请将此部分移到成功函数中:

$('#content').append(str);  

我希望这有帮助。

谢谢

function getOptions()
{

$.ajax(
{ 
    url: 'http://server.com/',
    data: 
    { 
        'method': 'get',
        'search': 'menu_group_options_with_items',
        'type': 'group',
        'place_id': '6',
        'format': 'json'
    }, 
    dataType: 'jsonp',
    success: function (data) 
    { 
        alert("function");
        //var data = JSON.parse(data);
        var h=new String();
        for(var i=0;i<data.length;i++)
        {
            h+='<div class="data">';

            h+=data[i]['group_option'].OptionsID+'<br>';
            h+=data[i]['group_option'].MenuGroupID+'<br>';
            h+=data[i]['group_option'].group_options_name+'<br>';
            h+=data[i]['group_option'].menu_group_option_information+'<br>';
            h+=data[i]['group_option'].menu_group_option_min_selected+'<br>';
            h+=data[i]['group_option'].menu_group_option_max_selected+'<br>';
            h+=data[i]['group_option'].fDateAdded+'<br><br><br>';

            for(var iter = 0; iter < data[i]['group_option']['group_option_items'].length; iter++)
            {

                h+=data[i]['group_option']['group_option_items'][iter]['item'].OptionItemID+'<br>';
                h+=data[i]['group_option']['group_option_items'][iter]['item'].menu_item_option_name+'<br>';
                h+=data[i]['group_option']['group_option_items'][iter]['item'].menu_item_option_additional_cost+'<br>';
                h+='<br><br><br>';
            }   
            h += '</div>';
        }
        alert("h");
        alert(h);   
        alert("html equals ");
        html=h; 
        alert(html);

        $('#content').append(html);  
    }

});
alert("returning html");
alert(html);}

  ask by Jonathan translate from so

未解决问题?本站智能推荐: