html标记的id中的特殊字符
在html代码中,我现在使用代码<input type = "text" id = "abc@def.com">
来获取文本,它需要获取在文本字段中input的值。 我正在使用jQuery来做到这一点:
$( document ).ready( function() { $( ".bid" ).click( function() { idVal = this.id bidID = "#" + idVal + "bid" spanID = "#" + idVal + "cbid" bidValue = $(bidID).val(); alert(idVal) alert(bidID) alert(bidValue) //this alert says undefined $( spanID ).html( ' ' ).load( '{% url online_machines %}?id=' + idVal + '&bidvalue=' + bidValue); }); });
通过这样做,我得到的值错误未定义。 我试图从id中删除特殊字符来获得它的值。 但是我需要带有特殊字符的ID。 我怎样才能得到它的价值使用jQuery?
而不是尝试使用#编号,尝试这个匹配这样的属性,
$('[id=ID]')
要么
$('[id='+ID+']')
所以而不是
bidID = "#" + idVal + "bid"
你可以试试
bidID = "[id=" + idVal + "bid]"
有一个在这个镜头,而不是100%,这是否是你以后。 让我知道:
$( document ).ready(function() { $(".bid").click(function() { idVal = $(this).attr('id'); bidID = "#" + idVal + "bid"; spanID = "#" + idVal + "cbid"; bidValue = bidID.val(); alert(idVal); alert(bidID); alert(bidValue); spanID.html(' ').load('{% url online_machines %}?id=' + idVal + '&bidvalue=' + bidValue); }); });
$(document.getElementById('abc@def.com'))
也可以。
它看起来像JQuery有一个有用的方法,从版本3称为escapeSelector
。
$('#' + $.escapeSelector(my_id_with_special_chars));
给双方的单引号,如下所示:
$('#abc@def.com').val()
- 提交禁用的input字段的值
- 有没有人得到与Twitter Bootstrap工作的HTML电子邮件?
- 替代标签的Alt或title属性
- 具有捕获和接受属性的HTML文件input控件工作不正确?
- <fieldset>resize错误; 似乎有不可移动的`min-width:min-content`
- 如何获取和设置当前的网页滚动位置?
- 如何从Firefox中的select元素中删除箭头
- Visual Studio 2010简单的HTML项目types
- WebForms UnobtrusiveValidationMode需要一个ScriptResourceMapping作为'jquery'。 请添加一个名为jquery的ScriptResourceMapping(区分大小写)