出于一些绝对荒谬的原因,Magento在冒号中添加了更多令人讨厌的ID属性,我试图使用jQuery设置样式。我用于自定义选择的jQuery插件是破坏的,因为这些冒号对我来说看起来像个坏主意。
例如,结账时的州/省选择具有自动生成的ID“billing:region_id”。有没有办法删除这些冒号,或者甚至可能将其更改为连字符?使用冒号似乎是一个非常糟糕的主意,我想知道为什么会这样。
自定义选择下拉插件是jQuery UI dev中的一个,可以看到here。
非常感谢您的帮助。
答案 0 :(得分:4)
冒号在ID中是完全有效的字符,jQuery支持它们很好 - 如果你使用正确的CSS和JavaScript语法来逃避它们:
在可以使用的ID中的CSS字符中,CSS语法的一部分使用反斜杠(\
)进行转义。例如:
#billing\:region_id {
color: red;
}
在JavaScript中,反斜杠也是字符串中的特殊字符,因此它也需要进行转义 - 使用第二个反斜杠:
jQuery("#billing\\:region_id").css("color", "red");