我正在使用 jQuery 代码在前端制作 html,但我在 if 条件意外标记 if 中遇到错误。请帮我解决这个问题, 我想在将 jQuery 与 HTML 连接时存在问题。 下面是我的代码。
innerapptemp.blade.php
for (iS = 0; iS < response.data.stocks.length; ++iS) {
stocks += '<tr class="table-row"><td><select> <option> Select </option> <option value="1"' +if(response.data.stocks[iS].color_tag==1) +' selected> Interested </option> <option value="1"' +if(response.data.stocks[iS].color_tag==2) + ' selected> Not Interested </option> </select></td><td>' + response.data.stocks[iS].scan_name + '</td><td>' + response.data.stocks[iS].name + '</td><td>' + response.data.details[response.data.stocks[iS].name].close_price + '</td><td>' + response.data.details[response.data.stocks[iS].name].open_price + '</td><td>' + response.data.details[response.data.stocks[iS].name].last_price + '</td><td>' + response.data.details[response.data.stocks[iS].name].volume + '</td><td>' + response.data.details[response.data.stocks[iS].name].change_from_open + '</td><td>' + response.data.details[response.data.stocks[iS].name].pivot_point + '</td><td>' + response.data.details[response.data.stocks[iS].name].r3 + '</td><td>' + response.data.details[response.data.stocks[iS].name].changefromr3 + '</td><td><button class="btn btn-primary place-btn" attr-order_type="MARKET" attr-product="NRML" attr-symble="{{ $stock->name }}" attr-id="{{ $stock->name }}" data-toggle="modal" data-target="#place-order">Place Order</button></td><td><button type="button" class="btn btn-primary" data-toggle="modal" data-target="#depthMain">click</button></td></tr>';
}
答案 0 :(得分:0)
首先,让我们格式化您的代码,以便您可以实际看到它:
for (iS = 0; iS < response.data.stocks.length; ++iS) {
stocks += '<tr class="table-row"><td><select> <option> Select </option> <option value="1"' +
if(response.data.stocks[iS].color_tag==1) +
' selected> Interested </option> <option value="1"' +
if(response.data.stocks[iS].color_tag==2) +
' selected> Not Interested </option> </select></td><td>' +
response.data.stocks[iS].scan_name +
'</td><td>' +
response.data.stocks[iS].name +
'</td><td>' +
response.data.details[response.data.stocks[iS].name].close_price +
'</td><td>' +
response.data.details[response.data.stocks[iS].name].open_price +
'</td><td>' +
response.data.details[response.data.stocks[iS].name].last_price +
'</td><td>' +
response.data.details[response.data.stocks[iS].name].volume +
'</td><td>' +
response.data.details[response.data.stocks[iS].name].change_from_open +
'</td><td>' +
response.data.details[response.data.stocks[iS].name].pivot_point +
'</td><td>' +
response.data.details[response.data.stocks[iS].name].r3 +
'</td><td>' +
response.data.details[response.data.stocks[iS].name].changefromr3 +
'</td><td><button class="btn btn-primary place-btn" attr-order_type="MARKET" attr-product="NRML" attr-symble="{{ $stock->name }}" attr-id="{{ $stock->name }}" data-toggle="modal" data-target="#place-order">Place Order</button></td><td><button type="button" class="btn btn-primary" data-toggle="modal" data-target="#depthMain">click</button></td></tr>';
}
不能有长字符串并连接 (+) if 语句。您需要先解决这些问题并将它们作为变量包含在字符串中,或者将其分解并将它们放在您尝试创建的字符串之间。
例如这部分字符串:
<option value="1"'
+if(response.data.stocks[iS].color_tag==1)
+' selected> Interested </option> <option value="1"'
+if(response.data.stocks[iS].color_tag==2)
+ ' selected> Not Interested </option>
需要像这样重构:
// this part before you start the big long string
opt1selected = opt2selected ='';
if(response.data.stocks[iS].color_tag==1) opt1selected=' selected="selected"';
if(response.data.stocks[iS].color_tag==2) opt2selected=' selected="selected"';
// then in the string
// ....
'<option value="1"' +opt1selected+' </option>' +
'<option value="2"' +opt2selected+' </option>' +