可以使用包含字符串的隱藏輸入字段(類型隱藏)(逗號分隔值),其可以在以後是在服務器端以字符串形式接收,並且使用拆分方法進行拆分,這將導致期望的列表
<form>
<input id="result" type="hidden" name="result">
<!--your data table goes here-->
</form>
<script>
$(document).ready(function(){
var resultarray=[];
$('form input:checkbox').on('change', function(){
var orderValue=$(this).val();
// if string already available then remove(uncheck operation)
if(resultarray.indexOf(orderValue)!=-1)
{
resultarray.splice(resultarray.indexOf(orderValue), 1);
}
else
{
//if sting is not available then add(check operation)
resultarray.push(orderValue);
}
var text="";
for(x in resultarray)
{
text+=x+",";
//you may add an extra condition for not adding comma at last element
}
$("#result").val(text);
});
});
確保'order_list'的類型是'list'。此外,你應該檢查你是使用單一表格的所有'複選框'輸入或多個表單,每個爲您當前的頁面。這裏所有的'複選框'輸入字段都應該以單一形式包含在期望的輸出中。 –
是的,我確定只有單一的形式。我認爲在dataTable的分頁原因。例如:如果在我的表格中有2頁,當前頁面是1號,我提交表格,那麼'order_list'只接收頁碼1中複選框的值,並且沒有任何頁號2的值 –
您是對的,當您瀏覽頁面時,在表格主體中僅包含當前頁面的行,因此,表單也只包含當前頁面的輸入字段。如果你知道Jquery或者Javascript,我可以向你推薦另一種方法來解決你的問題。 –