我在SharePoint 2013中使用jQuery,并且必须获取表ID才能添加属性。 表格Id是
{44C80A95-F3E4-40DA-9A97-50CADFFFED61}-{DD02CEA7-CC2B-4E4A-A725-86E82C6D11FC}
当我使用时:
jQuery("#{44C80A95-F3E4-40DA-9A97-50CADFFFED61}-{DD02CEA7-CC2B-4E4A-A725-86E82C6D11FC}").attr("width","100%");
它给了我这个错误:
Uncaught Error: Syntax error, unrecognized expression: #{44C80A95-F3E4-40DA-9A97-50CADFFFED61}-{DD02CEA7-CC2B-4E4A-A725-86E82C6D11FC}
问题出在" {"。
如何解决这个问题?
答案 0 :(得分:3)
根据docs
使用任何元字符(例如!“#$%&'()* +,。/:;< =>?@ [] ^`{|}〜)作为文字作为名称的一部分,必须使用两个反斜杠进行转义:\\。例如,id =“foo.bar”的元素,可以使用选择器$(“#foo \\。bar”)
您需要在选择器中转义特殊字符或使用名称值属性:
jQuery("[id='{44C80A95-F3E4-40DA-9A97-50CADFFFED61}-{DD02CEA7-CC2B-4E4A-A725-86E82C6D11FC}']").attr("width","100%");
答案 1 :(得分:1)
通过转义括号?
jQuery("#\{44C80A95-F3E4-40DA-9A97-50CADFFFED61\}-\{DD02CEA7-CC2B-4E4A-A725-86E82C6D11FC\}").attr("width","100%");
灵感来源:jquery escape square brackets to select element
或更好,请参阅Milind Anantwar回答使用$("[id='anything here']")