此代碼是我的函數的一部分,它創建selectbox並將索引放到每個選項值中。第一個文本框根據正負值的變化獲取孩子的數量。如果有一個孩子,我會得到每個孩子的年齡。我的問題發生在提交表格後,我得到了每個孩子年齡的值。但它顯示了每個值之間的兩個逗號。 例如:Form Submition後的額外字符
5,5,......,8
首先是第一childeren的年齡,第二是第二兒童年齡和第三第三年齡。 這個問題發生在操作頁面。 正確的樣本應該是這樣的:
5,5,8
注:我必須保持逗號只是刪除它們之間的額外逗號
我應該怎麼做才能解決這個問題問題與額外的逗號? 這裏是我的代碼片段:
$(function() {
var createChildDropdown = function(i) {
var $childDropdown = $('<div />', {
'class': 'childs'
});
$childDropdown.append($('<label />', {
'for': 'childDropdown-' + i
}).text('Child age ' + i));
$childDropdown.append($('<select />', {
'name': 'childDropdown'
}));
var options = [' 1 years old', '2 years old', '3 years old'];
options.forEach(function(option, index) {
\t $childDropdown.find('select').append($('<option />').text(option).attr('value', `,${index}`));
});
return $childDropdown;
};
var destroyChildDropdown = function($el, i) {
$el.find('div.childs').get(i).remove();
};
$(".button-click-child a").on("click", function() {
var button = $(this);
var oldVal = parseInt(button.closest("ul").prev().val());
var newVal = (button.text() == "+") ? oldVal + 1 : (oldVal > 0) ? oldVal - 1 : 0;
var total_value = "";
\t if(newVal >= 5) return;
button.closest("ul").prev().val(newVal);
$(".cat_textbox").each(function() {
var cat = $(this).prev('span').text();
});
if (oldVal < newVal) {
$('.childDropdowns').append(createChildDropdown(newVal));
} else if (oldVal > newVal) {
destroyChildDropdown($('.childDropdowns'), newVal);
}
})
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<form method="post" action="http://www.fardadtour.com/roundtrip_search.bc">
<input type="text" class="cat_textbox" name="child" value="0" />
<ul class="button-group button-click-child">
<li><a href="javascript:void(0)"><span class="hide">+</span></a></li>
<li><a href="javascript:void(0)" ><span class="hide">-</span></a></li>
</ul>
<div class="childDropdowns"></div>
<button type="submit">SEND</button>
</form>
這是你的全部代碼嗎?你在哪裏知道輸出? – Jackowski
@Jackowski輸出在動作頁面中,在那個頁面中,我通過名字獲得了選擇的值。 – inaz
請顯示該頁面。 – Jackowski