jQuery-te 1.4.0添加链接按钮报错,求问题原因与解决方案
jQuery TE v1.4.0 添加链接按钮报错的原因与修复方案
报错原因
问题出在jQuery属性选择器的语法上。原代码里的[value^=http://]没有给属性值加引号,http://里的斜杠属于CSS选择器的特殊字符,jQuery解析时会把//误判为注释起始,直接导致选择器语法解析失败,抛出你看到的Syntax error, unrecognized expression错误。和你猜测的脱字符^无关,所以移除它解决不了问题。
修复方法
有两种可行的修改方式,任选其一即可:
给选择器的属性值加引号
修改jquery-te-1.4.0.js第735行的代码,把http://用单引号或双引号包裹:// 单引号版本 if(currentType!="1" && !linkinput.is("[value^='http://']"))或者:
// 双引号版本(注意外层用单引号避免冲突) if(currentType!="1" && !linkinput.is('[value^="http://"]'))直接判断value值,避开选择器
跳过jQuery的属性选择器,直接获取输入框的value值用原生的startsWith方法判断,这种方式更稳妥,不会触发选择器语法问题:if(currentType!="1" && !linkinput.val().startsWith('http://'))
内容的提问来源于stack exchange,提问作者Prescott Chartier
相关产品推荐
相关产品推荐

