#javascript #jquery #input
#javascript #jquery #ввод
Вопрос:
как я могу заменить запятые пробелом между ними? Я использую этот фрагмент для добавления значений флажков в скрытое поле.
текущие результаты выглядят следующим образом:
<input type="hidden" id="textValue" value="1,2,3,4,5,6,7" />
Я хочу получить следующий результат
<input type="hidden" id="textValue" value=" 1 2 3 4 5 6 7" />
<div id="mydiv">
<input type="checkbox" name="swimmingpool" id="swimmingpool" value="1" />
Swimming Pool<br />
<input type="checkbox" name="fitnesscenter" id="fitnesscenter" value="2" />
fitness center<br />
<input type="checkbox" name="restaurant" id="restaurant" value="3" />
restaurant<br />
<input type="checkbox" name="childrenactivities" id="childrenactivities" value="4" />
children’s activities<br />
<input type="checkbox" name="complimentarybreakfast " id="complimentarybreakfast"
value="5" />
complimentary breakfast<br />
<input type="checkbox" name="meetingfacilities" id="meetingfacilities" value="6" />
meeting facilities<br />
<input type="checkbox" name="petsallowed " id="petsallowed " value="7" />
pets allowed<br />
<input type="hidden" id="txtValue">
</div>
jQuery(document).ready(function($){
function updateTextArea() {
var allVals = [];
$('#mydiv :checked').each(function () {
allVals.push($(this).val());
});
$('#txtValue').val(allVals)
}
$(function () {
$('#mydiv input').click(updateTextArea);
updateTextArea();
});
});
Ответ №1:
Вместо этого:
$('#txtValue').val(allVals)
Сделайте это:
$('#txtValue').val(allVals.join(" "))
join
преобразует массив в строку, разделяя каждое значение разделителем, который вы передаете в качестве аргумента join
, в данном случае пробелом.
Ответ №2:
Я думаю, вы должны быть в состоянии сделать это:
заменить $('#txtValue').val(allVals)
на $('#textValue').val(allVals.join(" "))