用条件声明一个javascript变量

时间:2016-02-25 22:02:37

标签: javascript jquery json

我有问题。我想在JS中使用条件创建一个字符串(变量),如下所示:

var seanceHtml = '<table>' +
    '<tr><td>{{ Lang::get("messages.Monday") }}</td><td></td></tr>' +
        $.each(seances, function (index, seance)
        {

            if(seance.day == 0)
            {
                if(typeof seance.start_date === 'undefined' && typeof seance.end_date === 'undefined')
                {
                    <td><a><span class="fa fa-plus"></span></a></td>
                }
            }
        }) +
    '<tr><td>{{ Lang::get("messages.Tuesday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Wednesday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Thursday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Friday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Saturday") }}</td><td></td></tr>' +
    '</table>';

它说我的语法有问题。

1 个答案:

答案 0 :(得分:2)

您需要在jQuery.each()函数中进行连接,如下所示。

var seanceHtml = '<table>' +
         '<tr><td>{{ Lang::get("messages.Monday") }}</td><td></td></tr>';
$.each(seances, function (index, seance) {
    if(seance.day == 0) {
        if(typeof seance.start_date === 'undefined' && typeof seance.end_date === 'undefined') {
            seanceHtml += '<td><a><span class="fa fa-plus"></span></a></td>';
        }
    }
});
seanceHtml += '<tr><td>{{ Lang::get("messages.Tuesday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Wednesday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Thursday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Friday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Saturday") }}</td><td></td></tr>' +
    '</table>';

请参阅此演示。

&#13;
&#13;
seances = [{start_date : 'asdasdasd', end_date : 'asdasdasd', day : 0 },{start_date : 'asdasdasd', end_date : 'asdasdasd'},{start_date : 'asdasdasd', end_date : 'asdasdasd'}];

seanceHtml = '<table>' +
         '<tr><td>{{ Lang::get("messages.Monday") }}</td><td></td></tr>';
$.each(seances, function (index, seance) {
    if(seance.day == 0) {
        if(typeof seance.start_date === 'undefined' && typeof seance.end_date === 'undefined') {
            seanceHtml += '<td><a><span class="fa fa-plus"></span></a></td>';
        }
    }
});
seanceHtml += '<tr><td>{{ Lang::get("messages.Tuesday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Wednesday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Thursday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Friday") }}</td><td></td></tr>' +
    '<tr><td>{{ Lang::get("messages.Saturday") }}</td><td></td></tr>' +
    '</table>';


document.getElementById('text').innerHTML = seanceHtml;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<textarea id="text" rows="10" cols="80"></textarea>
&#13;
&#13;
&#13;