如何在html中读取具有特殊字符的属性值

时间:2016-01-05 16:00:52

标签: javascript jquery html angularjs

我有一个要求,我从json响应中获取id。   id =“TICKET NUMBER(TK)”

html组件包含一个属性CI,其值与ID相同。

当我尝试使用ID访问任何属性时,我收到的错误是“无法识别的表达式”

这是因为Id中存在特殊字符。

以下是我的示例html

<div class="col-sm-4" id="TICKET NUMBER (TK)" CI="TICKET NUMBER (TK)">
  <label>Ticket</label>
  <div>
    <span></span>
    <input  id="ticket"  ng-model="Ticket" >
  </div>
</div>

请帮我解决问题。

2 个答案:

答案 0 :(得分:1)

@Jefrey 是正确的,id不应该有空格。虽然您可以在空格和特殊字符之前使用\\访问它: -

$('#TICKET\\ NUMBER\\ \\(TK\\)')

<强>样本

&#13;
&#13;
$('#TICKET\\ NUMBER\\ \\(TK\\)').css('border', '1px solid red')
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input type="text" id="TICKET NUMBER (TK)" />
&#13;
&#13;
&#13;

答案 1 :(得分:0)

请注意,id属性不能包含空格(source)。

  

该值必须在元素的主子树中的所有ID中唯一,并且必须至少包含一个字符。该值不得包含任何空格字符。

考虑仅使用CI属性。如果必须通过其ID属性标识元素,请首先考虑MD5的ID。