【发布时间】:2012-03-29 05:38:31
【问题描述】:
我是 Yii 框架的新手,在 Yii Framework 中做一个小应用程序,我有 Invoice 和 Customers 这样的数据库
==== Invoice ====
id
customer_id
invoice_title
invoice_no
invoice_issue_date
created_by
updatd_by
=== Customers ===
id
customer_name
address
business_address
city
state
现在根据我的要求,我需要所有可用的客户名称都应该出现在发票创建表单中的 dropdown 列表中,因此我在 Invoice form.php 中进行了更改,以便像这样调用所有可用的客户名称
<div class="row">
<?php echo $form->labelEx($customers,'customer_name'); ?>
<?php echo $form->dropdownList($customers,'customer_name', CHtml::listData(Customers::model()->findAll(), 'id', 'customer_name'), array('empty'=>'Choose one')); ?>
<?php echo $form->error($customers,'customer_name'); ?>
</div>
它显示了来自customer table 的可用customers name。但我还需要一件事。那就是它将在下拉列表中显示一个名为Create One 的附加链接。管理员将点击此链接和一个lightbox 将与create customer form 一起提供,输入的所有数据将保存在customer table 中。我还上传了一些图片以供参考。任何帮助和建议将非常可观。参考图片已上传至此处。@ 987654321@
[更新] 我已经向前迈进了一步并做出了这些改变
<div class="row">
<?php echo $form->labelEx($customers,'customer_name'); ?>
<div id="job">
<?php echo $form->dropDownList($customers,'customer_name',CHtml::listData(Customers::model()->findAll(),'id','customer_name'),array('prompt'=>'Select')); ?>
<?php echo CHtml::ajaxLink(Yii::t('customers','Create customers'),$this->createUrl('customers/create'),array(
'onclick'=>'$("#customers").dialog("open"); return false;',
'update'=>'#jobDialog'
),array('id'=>'showJobDialog'));?>
<div id="jobDialog"></div>
</div>
</div>
它正在工作但我希望create Customers 链接在下拉列表中而不是在下拉列表之外。那么如何做到这一点?任何帮助和建议都将非常受欢迎。
【问题讨论】:
-
就像我说的,你可以在你的选择中有多个空白项目,如果选择了一个特定的项目,你可以使用 javascript 显示/隐藏一个对话框窗口。我更新了我的答案,我不能比这更清楚了。
标签: yii