#javascript #jquery
#javascript #jquery
Вопрос:
ниже приведена динамическая структура тега div в форме. я хочу напечатать значение в определенное значение текстового поля среди всех.при нажатии на конкретную ссылку. я написал свои коды ниже.
<div id="main">
<a href="some url" id="my_id-0">click</a>
<div>
<input type="textbox" id="my-input-0" class="input-class" value=""/>
</div>
</div>
<div id="main">
<a href="some url" id="my_id-1">click</a>
<div>
<input type="textbox" id="my-input-1" class="input-class"value="" />
</div>
</div>
<div id="main">
<a href="some url" id="my_id-2">click</a>
<div>
<input type="textbox" id="my-input-2" class="input-class" value=""/>
</div>
</div>
чего я точно хочу, так это
если нажата ссылка с идентификатором my_id-0, значение для текстового поля рядом с нажатой ссылкой должно быть добавлено динамическим способом. как мне это сделать?
Комментарии:
1. Я думаю, что это базовое использование jquery, вы должны сначала научиться самостоятельно.
2. @fish_ballэто также тривиально при использовании обычного JS. Тем не менее, jQuery будет короче и проще для ввода. В любом случае, решение тривиально.
Ответ №1:
Прежде всего id
s должны быть уникальными в html-коде, поэтому удалите его и используйте class, как показано ниже:
<div class="main">
<a href="some url" id="my_id-0">click</a>
<div>
<input type="textbox" id="my-input-0" class="input-class" value=""/>
</div>
</div>
<div class="main">
<a href="some url" id="my_id-1">click</a>
<div>
<input type="textbox" id="my-input-1" class="input-class"value="" />
</div>
</div>
<div class="main">
<a href="some url" id="my_id-2">click</a>
<div>
<input type="textbox" id="my-input-2" class="input-class" value=""/>
</div>
</div>
Используйте следующий jQuery для печати значений :
$(document).ready(function(){
$('a[id^=my_id]').click(function(e){
e.preventDefault();
$(this).next().find('.input-class').val('your print value');
});
});
Ответ №2:
$('#my_id-0').siblings('div').children('input').value(yourValue);
Ответ №3:
Вы можете использовать ближайший, и идентификаторы должны быть уникальными
$(document).ready(function(){
$('a').click(function(e){
e.preventDefault();
$(this).closest('input[type="text"]').val($(this).attr("href"));
});
});
Ответ №4:
приведенные ниже коды работают для меня.
мой запрос,
jQuery(document).ready(function($){
$('a').click(function(e){
e.preventDefault();
$(this).next().find('.input-class').val('your print value');
});
});
мой html,
<div id="main">
<a href="some url" id="my_id-0">click</a>
<div>
<input type="textbox" id="my-input-0" class="input-class" value=""/>
</div>
</div>
<div id="main">
<a href="some url" id="my_id-1">click</a>
<div>
<input type="textbox" id="my-input-1" class="input-class"value="" />
</div>
</div>
<div id="main">
<a href="some url" id="my_id-2">click</a>
<div>
<input type="textbox" id="my-input-2" class="input-class" value=""/>
</div>
</div>
Спасибо всем за ответ.