dongqun1656 2018-02-15 18:10
浏览 215
已采纳

Yii2 activeform onchange标签名称为相同的属性值

In my dropdownlist, when I choose Percentage, the label of the 'vendorcommision'(next field) should be "Percentage". When I choose Amount, the label should be "Amount"

if($model->userType!="ADMIN" && $model->userType!="HOST"){
      echo $form->field($model, 'fixedOrPercentagevendor')
                    ->dropDownList(
                    [0=>'Amount',1=>'Percentage'],
                    [
                        'onchange'=>'if($(this).val() == 1){
                            $("#percentage").val("20");
                            }
                            else{
                            $("#percentage").val("1000");}'
                    ]);

    echo $form->field($model, 'vendorcommision')
                  ->label('Vendor Fee')
                  ->textInput(['type' => 'number','id' => 'percentage']);
    }
  • 写回答

1条回答 默认 最新

  • dou91808 2018-02-16 02:02
    关注

    Here is how I would do it:

    1. Turn label off for 'vendorcommision' [->label(false)]
    2. Use a span for custom label, eg <span class="custom-label"></span>
    3. Add event listener to the dropdown list to change labels. It will be on the lines of:

      var onChangeFunc = function(event) {
          if($(fixedOrPercentagevendorSelector).val() == 1) {
              $('.custom-label').html('Percentage');
          } else {
              $('.custom-label').html('Amount');
          }
      }
      

    Note: If you include I18N support to your project, you will probably have to save the labels in some variable and use them.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?
  • ¥15 讲解电路图,付费求解
  • ¥15 有偿请教计算电磁学的问题涉及到空间中时域UTD和FDTD算法结合的
  • ¥15 three.js添加后处理以后模型锯齿化严重
  • ¥15 vite打包后,页面出现h.createElement is not a function,但本地运行正常