如何获取id包含特殊字符的输入元素的值?

时间:2015-12-10 15:06:43

标签: javascript jquery

HTML code:

<input id="lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_:services:dtServicesTable:0:_id68:0:framedRouteIp" name="lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_:services:dtServicesTable:0:_id68:0:framedRouteIp" value="10.9.9.9" class="" type="text">

JavaScript代码:

var grade =  $('#lfr\\_\\_WSRP\\_e044d147\\_\\_55a7\\_\\_4e6b\\_\\_9e5f\\_\\_938e05d9050c\\_\\:services:dtServicesTable\\:'+i+'\\:\\_id68\\:'+j+'\\:framedRouteIp').val();

但我的JavaScript代码没有给我价值。

3 个答案:

答案 0 :(得分:1)

应该像下面的代码一样,因为下划线client_enumerator.next不是一个特殊字符,你只需要一个特殊字符_就可以逃脱。

希望这有帮助。

:
var i=0,j=0;
var grade = $('#lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_\\:services\\:dtServicesTable\\:'+i+'\\:_id68\\:'+j+'\\:framedRouteIp').val();

$('#result').text(grade);

注意:检查有问题的评论您应该认真考虑使用输入ID尝试完成的任何内容。 ......

答案 1 :(得分:0)

您只应逃避,因为 _ 不是特殊字符 所以你的javascript代码将是:

var grade =  $('#lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_\\:services\\:dtServicesTable\\:0\\:_id68\\:0\\:framedRouteIp').val();

这将起作用

答案 2 :(得分:0)

之前使用\:仅作为您的Id:特殊字符_(下划线不是特殊字符)

运行以下代码并在控制台中检查输出。

<script src="//code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
    $(function() {
        var grade = $("#lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_\\:services\\:dtServicesTable\\:0\\:_id68\\:0\\:framedRouteIp").val();
        console.log(grade);
    });
</script>
<input id="lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_:services:dtServicesTable:0:_id68:0:framedRouteIp" name="lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_:services:dtServicesTable:0:_id68:0:framedRouteIp" value="10.9.9.9" class="" type="text">