Javascript 使用Jquery选择带有花括号的id

Javascript 使用Jquery选择带有花括号的id,javascript,jquery,sharepoint-2007,graph,Javascript,Jquery,Sharepoint 2007,Graph,我有一个令人沮丧的问题,我相信有一个简单的答案。不幸的是,我似乎在任何地方都找不到它!我有一个无法控制SharePoint的表,并且已分配的表ID包含花括号: e、 g 如何在维护括号的同时使用JQuery选择表 目前的准则是: $(function(){ $('/{#{ACAC3258-D068-4799-931A-FCC069613AB6}-{EF2BF0FD-7927-4194-910F-0FE83EC4F118}}/').visualize({type: 'bar', widt

我有一个令人沮丧的问题,我相信有一个简单的答案。不幸的是,我似乎在任何地方都找不到它!我有一个无法控制SharePoint的表,并且已分配的表ID包含花括号:

e、 g

如何在维护括号的同时使用JQuery选择表

目前的准则是:

    $(function(){

$('/{#{ACAC3258-D068-4799-931A-FCC069613AB6}-{EF2BF0FD-7927-4194-910F-0FE83EC4F118}}/').visualize({type: 'bar', width: '420px'});


});
我正在尝试使用JQuery图形工具Visualize

在此方面的任何帮助都将不胜感激


非常感谢

该ID在HTML4中无效,因此您不能假设每个浏览器或工具都能处理它

从:

ID和名称标记必须以字母[a-Za-z]开头,后面可以是任意数量的字母、数字[0-9]、连字符、下划线、冒号和句点


然而,可能值得注意的是,HTML5部分是对现有浏览器如何处理HTML的重新标准化,因此尽管我提出了警告,但很可能还有另一种解决方案可以更频繁地工作。

最简单的选择是调用$document.getElementById{ACDC3234-D009-4889-931A-FCC069613AB6}-{EF2BF0FD-7927-4194-910F-0FE83EC4F118}

您还可以尝试使用\字符转义大括号,这些字符本身必须在JS字符串文字中转义:

$('#\\{ACDC3234-D009-4889-931A-FCC069613AB6\\}-\\{EF2BF0FD-7927-4194-910F-0FE83EC4F118\\}')

由于它是无效的ID,您可能无法使用ID选择器。但这可能会起作用:

$('table[id="{ACDC3234-D009-4889-931A-FCC069613AB6}-{EF2BF0FD-7927-4194-910F-0FE83EC4F118}"]')
现在你可以使用任何属性选择器,不管它叫什么。既然你可以在属性中放入任何东西,我想你可以!搜索它

也许jQuery不允许它

编辑 jQuery 1.3.2允许它:

此外,它还帮助:

如果希望将任何元字符(如!$%&'*+,./:;?@[\]^`{124;}~用作名称的文字部分,则必须使用两个反斜杠转义字符:\\


困惑于你为什么在开始时使用/{而在结束时使用额外的}/吗?谢谢你的帮助!下面的“getElementById”答案非常有效!我知道它很简单。非常感谢所有回答的人!你的两个解决方案至少都可以在Chrome中使用-刚刚测试过: