Jquery循环一次或在数据数组中显示一次数据

时间:2016-04-27 10:14:08

标签: javascript php jquery laravel

我正在使用$ .get()请求从Laravel控制器获取数据并在Javascript中获取数据数组。

function getSpots1(){

var spots = $('#event-spots1');
    spots.empty();
    spots.html('<p><i class="uk-icon-refresh uk-icon-medium uk-icon-spin"></i></p>');
    var event_id = $("#event-event_id").val();
    var event_date = $("#event-date").val();
    var code = '';
    console.log(event_date);
    $.get("/1/users/spots/" + event_id + "/" + event_date + "/date", function(data) {
        spots.empty();
        console.log(data);

        code += '<label for="event_time" class="uk-form-label">Select Time</label><select class="uk-width-1-1" name="event_time" id="event-time">';
        $.each(data.spots, function(index, value) 
        {
            code += '<option value="' + value.event_time + '">' + value.event_time + '</option>';
        });

        code += '</select><p class="uk-form-help-block uk-text-muted">The spot you\'re booking</p>';
        code += '</br><div class="uk-margin-bottom"><label for="event_time" class="uk-form-label">Price</label>';

        $.each(data.spots, function(index, value) 
        {
            code += '<input type="text" class="uk-width-1-1" value="' + value.price + '" disabled />';      
        });

        spots.append(code);
        getSpots2();
    });

}

我有$ .each()jquery方法循环遍历Data数组。但是对于第二个$ .each()方法,我只需要循环一次。我得到value.price多次取决于循环长度。对于第一个$ .each我需要一个循环,因为我有选择输入字段。 是否有另一种方法而不是$ .each来循环数据变量?我是新手,并且以前没有对Jquery或Javascript进行过真正的编码。

1 个答案:

答案 0 :(得分:3)

嗯,你可以在data.spots中找到第一个对象,例如data.spots[0].event_time,然后你就不必循环了。

少推荐,你可以在循环结束时放一个return false;,例如:

  $.each(data.spots, function(index, value) 
        {
            code += '<input type="text" class="uk-width-1-1" value="' + value.price + '" disabled />';   
            return false;
        });

立即停止循环。