2016-11-24 77 views
1

我想在yii2文本输入为空时禁用按钮? 你能帮助我吗? 这是我的代码 感谢如何在yii2中的文本输入为空时禁用按钮?

<div class="pemesanan-search thumbnail padding-baru col-sm-6 input"> 
 

 
    <?php $form = ActiveForm::begin([ 
 
     'action' => ['menubayar'], 
 
     'method' => 'get', 
 
    ]); ?> 
 

 
    <?= $form->field($model, 'NO_REKENING') ?> 
 

 
    <?= $form->field($model, 'NO_KARTU') ?> 
 

 
    <?= $form->field($model, 'NAMA') ?> 
 

 
    <div class="form-group"> 
 
     <center><?= Html::submitButton('Cek Kartu Kredit', ['class' => 'btn btn-default']) ?></center> 
 
    </div> 
 

 
    <?php ActiveForm::end(); ?> 
 

 
</div>

+0

你想这样做只是为了防止表单提交,如果输入是空的? 如果是这样的话,Yii2有很好的验证来处理这些事情,并且您也可以使用HTML5来要求输入。 如果你想禁用提交按钮,你必须注册一个JS代码并使用Java脚本来做到这一点。 – sobbe

+0

谢谢,你有一个示例代码? @SobhanBagheri –

+0

等一下!我将输入为答案 – sobbe

回答

1

首先禁用默认提交按钮,在按钮的选项使用disabled属性 。

之后,你必须注册一个JS代码使用Yii2 RegisterJS

然后触发事件使用jQuery在输入值更改后删除disabled属性。

$("# [id of the input that needs value]").change(function() { 
    $('input[type="submit"]').removeAttr('disabled'); 
}); 

通过使用上面的代码,如果你改变输入蒙山这个id的值,就意味着它不是空了和disabled属性将被删除。

或者你也可以检查是否$("# [id of the input that needs value]").val();不为空,此代码再次移除已停用的属性:

$('input[type="submit"]').removeAttr('disabled'); 

PS:您还可以在其模型中定义的规则,使属性作为Required模型规则,并让Yii处理验证。你可以通过阅读This document了解更多。

+0

非常感谢你 –

相关问题