【问题标题】:Onchange dropdown set max value dynamically yii CMultiFileUploadOnchange 下拉菜单动态设置最大值 yii CMultiFileUpload
【发布时间】:2015-01-01 13:13:49
【问题描述】:
 <?php
   echo $form->dropDownList($model,'ment_id', $mentslists,
        array(
        'prompt'=>'Select ment',
        'class'=>'required'
     ));
     echo $form->error($model,'ment_id'); 
     ?>

Onchange 下拉列表我想为 CMultiFileUpload 设置最大值。

我的 CMultiFileUpload 代码是,

     <?php
$this->widget('CMultiFileUpload', array(
           'name' => 'data1',
           'attribute' => 'image',
           'accept' => 'doc|docx|pdf|txt|jpeg|jpg|png',
            'max' => 10,
            'duplicate' => 'file appears twice',
            'remove' => Yii::t('ui', 'Remove'),
          ));
        ?>

我尝试了 onchange 下拉菜单从数据库中获取最大允许大小值,如何将该值应用于 ma​​x 字段。

我的 jquery 代码是,

$("#ment_id").on('change',function()
      {
    $.ajax({
     type: "POST",
     url: "/ments/default/GetmentDetails",
     data: {'ment_id':$(this).val()},
     success: function(data){
         //data having the max upload value               
       }
     });
      });

我的控制器代码是,

public function actionGetmentDetails()
    {
        $id = $_POST['ment_id'];
        $assign_details = Ments::model()->findAllByAttributes(array('id'=>$id));
        echo $assign_details[0]['c_max_upload_files'];
        exit;
    }

如何根据下拉列表的变化动态设置ma​​x值,

【问题讨论】:

  • 你有一个正在运行的网站吗?

标签: php jquery yii


【解决方案1】:

你在哪一点卡住有点模糊,这里是 javacript/jquery 中的一个来回。

$("#ment_id").on('change',function(){

  // Get max value before the ajax call 
  var maxValue = undefined;
  $('option', $(this)).each(function() {
        var val = $(this).attr('value');
        val = parseInt(val, 10);
        if (maxValue === undefined || maxValue < val) {
            maxValue = val;
        }
    });

 $.ajax({
     type: "POST",
     url: "/ments/default/GetmentDetails",
     data: {'ment_id':$(this).val()},
     success: function(data){
         //setting the retrieved max value by ajax response value  
         $("#ment_id").val(data.max_value); 
       }
     });
}); 

如果您希望在 php 中发布该值并将其传递给该小部件代码,则更多的是调用该小部件方法的问题,因为您已经将值作为 $_POST 到位。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多