我正在使用Bootstrap Dual Listbox来选择多个数据,并向用户显示有多少人会出现在官方列表中,谁不会出现。
重点是,即使它工作,我想知道我如何知道哪个框有选定的项目,并使用PHP通过POST发送它们,因为在HTML中您可以看到的唯一" select“标记是唯一一个包含您想要选择的所有选项的标记,并且当您将数据左右移动到容器时,它会动态调用box1和box2。
它的代码几乎和这个链接一样,因为我不能在这里写下代码,不知道为什么它没有显示所有的代码(新的):Bootstrap Dual Listbox : How to Limit Selected Option,但不是我想要的问题。
希望你能理解我的意思!
非常感谢!
发布于 2016-01-19 02:31:47
我的观点是:
{!! Form::open(['class'=>'form-horizontal','role'=>'form']) !!}
<select multiple="multiple" size="10" name="facturas[]" id="selectfacturas">
@foreach($facturas as $factura)
<option value="{{ $factura->id }}"{{ ( $factura->ordendepago_id==$op->id ? ' selected="selected"':'') }}>{{ $factura->descripcionLinda() }}</option>
@endforeach
</select>
<script>
var demo2 = $('#selectfacturas').bootstrapDualListbox({
nonSelectedListLabel: 'Comprobantes disponibles',
selectedListLabel: 'Comprobantes imputados a esta orden',
preserveSelectionOnMove: 'moved',
moveOnSelect: false,
showFilterInputs: false,
});
</script>
{!!Form::submit( 'Siguiente',array('class'=>'btn btn-primary','id'=>'btn-submit'))!!}
{!!Form::close()!!} 然后,在我的控制器中:
public function selefacturasPost( $id ) {
dd( \Input::All() );它返回一个数组!
array:2 [▼
"_token" => "YTlypLsDjO37GGTAHXcKcKfho1vKYx5c0xgDN1cM"
"facturas" => array:2 [▶]
]发布于 2017-10-12 22:55:27
以下是我的解决方案:
<-- HTML: -->
<form action="your_php_file.php" method="post" id="your-dual-listbox-form">
<select multiple="multiple" size="10" name="duallistbox" id="initializeDuallistbox">
<option value="option1">Option 1</option>
<option value="option2">Option 2</option>
<option value="option3" selected="selected">Option 3</option>
...
<option value="option20" selected="selected">Option 20</option>
</select>
<input type="hidden" name="DataFromRightSideList" value="null" id="setState">
<button type="submit" class="btn btn-primary">Save</button>
</form>
<-- jQuery: -->
<script type="text/javascript">
$('#your-dual-listbox-form').submit(function() {
var formData = $('[name="duallistbox"]').val(); //this will get as a string values from the right side Your dual listbox
$(function () {
$('#setState').val(formData); //this will change value of input id="setState"
});
$( '#your-dual-listbox-form' ).submit(); //and here submit your form
return false;
});
</script>
<-- PHP: -->
<?php
echo $_POST['DataFromRightSideList']; //it will print something like "option 3, ..., option20"
?>
https://stackoverflow.com/questions/32557965
复制相似问题