从Magento的表单元素ID's中移除列号


Removing Colon's From Form Element ID's in Magento

出于一些绝对荒谬的原因,Magento在结帐页面上为ID属性添加了冒号,这更令人讨厌,我试图使用jQuery对其进行样式化。我正在使用的jQuery插件的自定义选择是坏的,因为这些冒号看起来像一个坏主意在第一个地方,我。

例如,结帐时选择的州/省有一个自动生成的ID"billing:region_id"。是否有办法删除这些冒号,或者甚至将其更改为连字符?使用冒号似乎是一个非常糟糕的主意,我想知道为什么会这样。

自定义选择下拉插件是jQuery UI开发中的一个,可以在这里看到。

感谢您的帮助。

冒号是id中完全有效的字符,如果使用适当的CSS和JavaScript语法转义它们,jQuery对它们的支持非常好:

在CSS中,id中的字符也可以使用CSS语法的一部分,使用反斜杠(')进行转义。例子:

#billing':region_id {
  color: red;
}

在JavaScript中,反斜杠也是字符串中的一个特殊字符,所以它也需要转义——用第二个反斜杠:

jQuery("#billing'':region_id").css("color", "red");

示例:http://jsfiddle.net/76jyM/