本文介绍了jQuery +客户端模板=&quot;语法错误,无法识别的表达式&quot;的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 我刚刚将jQuery从1.8.3更新到1.9,它突然崩溃了。I just updated jQuery from 1.8.3 to 1.9, and it started crashing all of a sudden.这是我的模板:<script type="text/template" id="modal_template"> <div>hello</div></script>这是我读它的方式:modal_template_html = $("#modal_template").html();这是我将它转换为jQuery对象的方式(我需要在它上面使用jQuery方法):This is how I transform it into jQuery object (I need to use jQuery methods on it):template = $(modal_template_html); ...和jQuery崩溃!... and jQuery crashes!错误:语法错误,无法识别的表达式:< div> hello< / div>Error: Syntax error, unrecognized expression: <div>hello</div> slice.call(docElem.childNodes,0)[0] .nodeType;slice.call( docElem.childNodes, 0 )[0].nodeType; jquery-1.9.0.js(第3811行)jquery-1.9.0.js (line 3811)但是,如果我将模板声明为纯文本变量,它再次开始工作:However, if I declare template as a plain text variable, it starts working again:var modal_template_html = '<div>hello</div>';任何人都可以帮我解决这个问题吗?Can anyone help me to figure this out? 更新: Jquery团队听到并且改变 1.10中的事情恢复正常:UPDATE:Jquery team heard and changed things back to normal in 1.10:推荐答案使用换行符(或<以外的任何内容)开头的字符串不被视为jQuery 1.9中的HTML字符串Turns out string starting with a newline (or anything other than "<") is not considered HTML string in jQuery 1.9 http://stage.jquery.com/upgrade-guide /1.9/#jquery-htmlstring-versus-jquery-selectorstring 这篇关于jQuery +客户端模板=&quot;语法错误,无法识别的表达式&quot;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!
08-12 12:40