Php 如何将参数传递到模式窗口
我有三个按钮可以打开页面上的一个模式窗口:Php 如何将参数传递到模式窗口,php,yii,Php,Yii,我有三个按钮可以打开页面上的一个模式窗口: <?php $this->beginWidget('bootstrap.widgets.TbModal', array('id'=>'myModal',)); ?> <div class="modal-header"> <a class="close" data-dismiss="modal">×</a> <h4 class="text-center
<?php $this->beginWidget('bootstrap.widgets.TbModal', array('id'=>'myModal',)); ?>
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h4 class="text-center">Pay</h4>
</div>
<div class="modal-body">
<?php
$this->widget('bootstrap.widgets.TbDetailView', array(
'type'=>'bordered condensed',
'data'=>$model,
'attributes'=>array(
array(
'type'=>'raw',
'label'=>'Период',
'value'=> '', // if (clicked button id is 1 value == 1 day) else if (clicked button id is 2 value == 7 days)
),
),
));
?>
</div>
<div class="modal-footer">
<?php $this->widget('bootstrap.widgets.TbButton', array(
'type'=>'primary',
'label'=>'Проверить',
'url'=>'#',
'htmlOptions'=>array('data-dismiss'=>'modal'),
)); ?>
</div>
<?php $this->endWidget(); ?>
<?php $this->widget('bootstrap.widgets.TbButton', array(
'encodeLabel' => false,
'label'=>'1 day',
'type'=>'primary',
'htmlOptions'=>array(
'id' => '1',
'onclick' => 'alert(this.id)',
'data-toggle'=>'modal',
'data-target'=>'#myModal',
),
)); ?>
<?php $this->widget('bootstrap.widgets.TbButton', array(
'encodeLabel' => false,
'label'=>'7 dayss',
'type'=>'primary',
'htmlOptions'=>array(
'id' => '2',
'onclick' => 'alert(this.id)',
'data-toggle'=>'modal',
'data-target'=>'#myModal',
),
)); ?>
<?php $this->widget('bootstrap.widgets.TbButton', array(
'encodeLabel' => false,
'label'=>'1 month',
'type'=>'primary',
'htmlOptions'=>array(
'id' => '3',
'data-toggle'=>'modal',
'data-target'=>'#myModal',
),
)); ?>
&时代;
支付
如何将单击的按钮id传递给TbButton值?
如果(点击按钮ID为1值=1天),否则(点击按钮ID为2值=7天)…< P>首先,网站上的元素ID需要是唯一的,您可能需要考虑使用数据属性或调用这些ID不同。 接下来,提交表单的唯一按钮是将表单的值传递给服务器,所以您需要使用隐藏的输入字段,或者通过按该按钮提交表单,或者使用ajax请求提交表单并手动附加它 正如我看到的,您已经将onclick事件直接放在元素中,更好的解决方案是将它放在单独的脚本标记/脚本文件中,但这超出了您的问题范围 要分配要随表单发送的值,需要使用以下js: 将代码分配给输入字段:
$(“#长度_字段”).val(this.id)
或者不使用jQuery:
document.getElementById('length_field')。value=this.id
如果您将使用data time length=“7”
而不是id,则可以通过以下方式执行:
$('#length_field').val($(this).data('time-length'))
但是,我不清楚您希望在何处传递此值,以及您希望如何处理它