0
你好我正在使用Yii框架和oracle数据库。我需要一些帮助来解决这个问题。我有一个发送电子邮件的表单。我的表单看起来像这样当下拉选择时自动生成文本字段值
电子邮件desc:_______ | v | (下拉值形式的数据库)
电子邮件主题:_________(该字段将自动填写选择的电子邮件的主题的数据)
电子邮件主体:_______(该字段将自动填写选择的电子邮件的主题的数据)
我的表格:
email_desc |主题| body_email
payment1 |房租支付|地址:****城市:雅加达
恩:我选择email_desc为payment1,电子邮件主题将自动填写为“支付租金”和电子邮件的身体会自动填写的地址:****城市:雅加达
这里是我的形式
<div class="control-group">
<?php echo $form->labelEx($model,'EMAIL_DESC', array('class'=>'control-label')); ?>
<?php echo $form->dropDownlist($model,'EMAIL_DESC',
(CHtml::listData (TrnProjImplement::model()->getList(),'EMAIL_DESC','EMAIL_DESC')),
array(
'empty'=>'--Pilih salah satu--',
'value'=>$model->EMAIL_DESC,
'id'=>"dropDown",
'ajax'=>array(
'type'=>'GET',
'url'=>CController::createUrl('email/field'),
'update'=>'#subject',
'data'=>array('EMAIL_DESC'=>'js: this.value'),
),
));
?>
<span class="help-inline text-error"><?php echo $form->error($model,'EMAIL_DESC'); ?></span>
</div>
<div class="control-group">
<?php echo $form->labelEx($model,'SUBJECT', array('class'=>'control-label')); ?>
<?php echo $form->textField($model,'SUBJECT',array('size'=>60,'maxlength'=>100, 'style'=>'width:600px', 'id'=>"subject"));?>
<?php //echo CHtml::activeTextField($model, 'SUBJECT',
// array(
// 'ajax'=>array(
// 'type'=>'POST',
// 'url'=>Yii::app()->createUrl('email/create'),
// 'id'=>'subject',
//),
//));
?>
<span class="help-inline text-error"><?php echo $form->error($model,'SUBJECT'); ?></span>
</div>
<!--<div class="control-group" id="body-email">-->
<div class="control-group">
<?php echo $form->labelEx($model,'BODY_EMAIL', array('class'=>'control-label')); ?>
<?php echo $form->textArea($model,'BODY_EMAIL',array('size'=>1000,'maxlength'=>1000,'style'=>'height:200px; width:600px;', 'id'=>"body-email")); ?>
<span class="help-inline text-error"><?php echo $form->error($model,'BODY_EMAIL'); ?></span>
</div>
的JavaScript
<script>
function insertField(){
var desc = document.getElementById("dropDown").value;
var subj = document.getElementById("subject").value;
var body = document.getElementById("body-email").value;
$.ajax({
type : "POST",
url : "<?php echo Yii::app()->createUrl("emaildetail/field"); ?>",
data : {
"desc" : desc,
"subj" : subj,
"body" : body,
},
success: function(){
alert('asd');
},
});
</script>
我控制器
public function actionField(){
if(isset($_POST['desc'])){
$connection=Yii::app()->db;
$desc = Yii::app()->request->getPost('desc');
$subj = Yii::app()->request->getPost('subj');
$body = Yii::app()->request->getPost('body');
$sql = 'SELECT SUBJECT FROM EMAIL_DETAIL WHERE EMAIL_DESC = $desc';
$sql2 = 'SELECT BODY_EMAIL FROM EMAIL_DETAIL WHERE EMAIL_DESC = $desc';
$model2 = EMAIL_DETAIL::model()->findByAttributes(array('EMAIL_BODY'=>$desc));
if(isset($desc)){
$subj = $model->SUBJECT;
$body = $model->EMAIL_BODY;
}
}
}
我能得到email_desc的价值,但我仍然无法自动填写等领域
我得到这个“阿贾克斯呼叫错误”.. sry真的很晚relpy – Trainee
请张贴您的错误在ajax请求。 –
我仍然无法获得控制器下拉列表的值,我将其用于查询以显示我的主题的数据。这是我的查询 “$ sql = Yii :: app() - > db-> createCommand('SELECT EMAIL_CATEGORIZE FROM MST_EMAIL_BODY WHERE EMAIL_DESC = $ desc') - > queryScalar();” 然后我得到一个错误我的查询,因为它仍然'$ desc'不是下拉的值选择 – Trainee