Когда вы используете $("textarea").val()
, это займет первое значение текстовой области. Это отличается от .text()
(на входах), который объединяет их все.
Демонстрация:
console.log($("textarea").val())
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea>x</textarea>
<textarea>y</textarea>
<button type='button'>click</button>
как подключить кнопки к соответствующей текстовой области
В вашем случае вам нужночтобы найти связанную текстовую область, которую вы можете сделать с помощью некоторого обхода / обхода DOM:
var textarea = $(this).closest(".time-block").find("textarea")
Обновленный фрагмент:
$(".saveBtn").on('click', function(event) {
event.preventDefault();
var txt = $(this).closest(".time-block").find("textarea");
if (txt.val() !== "") {
console.log('saved');
console.log(txt.val());
var value = txt.val();
//localStorage.setItem("textField", value);
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="time-block">
<div class="row">
<div class="col-1">
<p class='hour'>9AM</p>
</div>
<div class="col-10">
<div class='input-group'>
<textarea class="form-control" type='text' placeholder='placeholder' rows="2.9"></textarea>
<div class="past"></div>
<div class="present"></div>
<div class="future"></div>
</div>
</div>
<div class="col-md-1">
<button class="input-group-addon saveBtn btn-primary btn-lg" type="submit">Save</button>
</div>
</div>
<div class="time-block">
<div class="row">
<div class="col-1">
<p class='hour'>10AM</p>
</div>
<div class="col-10">
<textarea class="form-control" type='text' placeholder='placeholder' rows="2.9"></textarea>
<div class="past"></div>
<div class="present"></div>
<div class="future"></div>
</div>
<div class="col-md-1">
<button class=" input-group-addon input-group-addon saveBtn btn-primary btn-lg" type="submit">Save</button>
</div>
</div>