Я искал веки и, похоже, не могу найти ответ на то, что я думаю, это довольно простой вопрос. Я использовал .clone()
, чтобы сделать копию li
, содержащую несколько полей формы, а затем я вставляю ее в начале формы. Это прекрасно работает.jquery найти и заменить строку внутри переменной
То, что я пытаюсь сделать, это найти и заменить все экземпляры ROWID
с переменной i
<ul class="form">
<li class="hide">
<ol class="form">
<li><label for="cat_id_ROWID">Category:</label>
<select id="cat_id_ROWID" name="cat_id[]">
<option>...options...</option>
</select>
</li>
<li>
<label for="value_ROWID">Value:</label>
<input id="value_ROWID" name="value[]">
</li>
<li>
<label for="description_ROWID">Description:</label>
<textarea id="description_ROWID" name="description[]"></textarea>
</li>
</ol>
</li>
</ul>
Любой мой JQuery является:
var newitem = $('li.hide').eq(0).clone();
newitem.removeClass('hide').addClass('row');
$(newitem).insertBefore('ul.form li:first');
Я пытаюсь сделать что-то вроде $(newitem).replace('ROWID',i);
но он не работает. Любая помощь будет оценена! Благодарю.
Вы также можете редактировать атрибуты только с помощью функции attr() :) почти так же! – Neysor
спасибо за ваш ответ, к сожалению, это не сработало для меня. Однако решение @nachito. Можно ли сгладить объект jQuery, чтобы он был просто html/text, а не серией объектов? Это то, что вы пытаетесь сделать с помощью .html() '? – leejmurphy
, если вы используете .html(), вы получаете все в своем контейнере как html или используете текст .text() как текст. то вы можете использовать любые манипуляции с строками, которые вы хотите. то вы можете вставить его снова. Просто посмотрите http://api.jquery.com/html/ и http://api.jquery.com/text/ – Neysor