2016-03-05 3 views
2

Я пытаюсь передать динамически созданный идентификатор getElementById, но когда я пытаюсь его зарегистрировать, он говорит undefined.передать динамически созданный идентификатор getElementById

"<input type='text' class='span2' name='price' pattern='[0-9.]*' id='p'"+ field.id + "placeholder='Price' value='0' />" 

консоль:

console.log(document.getElementById("p"+field.id).value); 
console.log($("#p"+field.id).val()); 

как говорит неопределенными. что я не так делаю?

+1

Почему вы сделали это в HTML? '... id = 'p' + field.id + placeholder = 'Price' ...' Конкатенация 'filed.id' с' placeHolder' –

+1

Что пытается сказать @RajaprabhuAravindasamy, вы можете попробовать добавить пространство перед 'placeholder', чтобы итоговая строка читала' ... id = 'p' "+ field.id +" placeholder' –

ответ

2

Как вы сцепляетесь ваш HTML строка неподходящая,

...id='p'"+ field.id.. 

Так выше фрагмент кода будет оцениваться в id='p'Something И при рендеринге, что something пришел из field.id будет рассматриваться как attribute.

Так что попробуйте написать его, как,

"<input type='text' class='span2' name='price' pattern='[0-9.]*' id='p"+ field.id + "' placeholder='Price' value='0' />" 
//------------------------------------------------------------------^----------------^ 
//changed the position of quotes. 
+1

спасибо Rajaprabhu –

Смежные вопросы