2015-12-10 2 views
2

HTML код:Как получить значение элемента ввода с идентификатором содержит специальные символы?

<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 не дает мне значение.

+0

<входные ID = "lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_: услуги: dtServicesTable: 0: _id68: 0: framedRouteIp" Name = "lfr__WSRP_e044d147__55a7__4e6b__9e5f__938e05d9050c_: услуги: dtServicesTable: 0: _id68: 0: framedRouteIp" значение = "10.9.9.9" class = "" type = "text"> – user1358426

+3

underscore не является специальным символом – depperm

+0

Пожалуйста, прочтите этот вопрос http://stackoverflow.com/questions/11563638/javascript-get-input-text-value – king

ответ

1

Должно быть как следующий код, так как знак подчеркивания _ не является особым символом, у вас есть только один специальный символ :, который вам нужно убежать.

Надеюсь, это поможет.


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

 
$('#result').text(grade);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></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"> 
 
<br> 
 
<span id='result'></span>

Примечание: Проверить комментарии в вопросе Вы должны серьезно пересмотреть то, что вы пытаетесь сделать с входным ID, как это. ...

0

Вы должны бежать только : в _ не специальный символ Так что ваш Javascript код будет:

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

это будет работать

0

использование \\ перед тем : только по мере того, как у вашего Идентификатора есть: специальный символ _ (знак подчеркивания не является особым символом)

Ru n ниже кода и проверить вывод в консоли.

<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"> 
Смежные вопросы