JQuery:未捕获的 SyntaxError:无效或意外的令牌
Posted
技术标签:
【中文标题】JQuery:未捕获的 SyntaxError:无效或意外的令牌【英文标题】:JQuery: Uncaught SyntaxError: Invalid or unexpected token 【发布时间】:2018-08-25 04:46:01 【问题描述】:我也在使用 socket.io。有一个 html 表格,当用户单击按钮时,我的代码应该用新表格替换该表格,但是它在标题中给出了错误消息。
这是我的代码: HTML:
<table>
</tbody>
<tr>
<td class="1"></td>
<td class="2"></td>
<td class="3"></td>
</tr>
<tr>
<td class="4"></td>
<td class="5"></td>
<td class="6"></td>
</tr>
<tr>
<td class="7"></td>
<td class="8"></td>
<td class="9"></td>
</tr>
</tbody>
</table>
jQuery 脚本:
socket.on('resetGranted', function()
$('table').replaceWith('<table> //says error is here
</tbody>
<tr>
<td class="1"></td>
<td class="2"></td>
<td class="3"></td>
</tr>
<tr>
<td class="4"></td>
<td class="5"></td>
<td class="6"></td>
</tr>
<tr>
<td class="7"></td>
<td class="8"></td>
<td class="9"></td>
</tr>
</tbody>
</table>');
)
我该如何解决这个问题?
【问题讨论】:
尝试使用 .html() 而不是 .replaceWith() 不要认为这是导致您的错误的原因,但请注意,您的 javascript 中的开始tbody
标记实际上是一个结束标记,因此您可能需要修复它。跨度>
【参考方案1】:
对多行字符串使用反引号`
console.log(`
multi
line
string
here
`);
【讨论】:
【参考方案2】:socket.on('resetGranted', function()
var htmlContent='<table>
</tbody>
<tr>
<td class="1"></td>
<td class="2"></td>
<td class="3"></td>
</tr>
<tr>
<td class="4"></td>
<td class="5"></td>
<td class="6"></td>
</tr>
<tr>
<td class="7"></td>
<td class="8"></td>
<td class="9"></td>
</tr>
</tbody>
</table>';
$('table').replaceWith(htmlContent);
)
【讨论】:
以上是关于JQuery:未捕获的 SyntaxError:无效或意外的令牌的主要内容,如果未能解决你的问题,请参考以下文章
未捕获的 SyntaxError:'' 字符串文字包含未转义的换行符
作为 ID 的 JQuery 变量导致未捕获错误:语法错误,无法识别的表达式:'#cell32'
如何防止 jQuery tablesorter 中的“未捕获的异常:语法错误,无法识别的表达式”?