des1roer
@des1roer
ученье - свет, а неученье - приятный полумрак

Yii 1.* как скрыть\заблокировать следующий input?

стандартная форма
<div class="row">
        <?php if (empty($master)) echo $form->labelEx($model, 'speed'); ?>
        <?php if (empty($master)) echo $form->textField($model, 'speed', array('disabled' => $master)); ?>
        <?php if (empty($master)) echo $form->error($model, 'speed'); ?>
    </div>

    <div class="row">
        <?php if (empty($master)) echo $form->labelEx($model, 'power'); ?>
        <?php if (empty($master)) echo $form->textField($model, 'power', array('disabled' => $master)); ?>
        <?php if (empty($master)) echo $form->error($model, 'power'); ?>
    </div>

как сделать чтобы следующие данные нельзя было внести до предыдущих?

ajax избыточен. а по поводу скрирта - муть какая то выходит.
<div id = "check" class="row" display="none">
        <?php if (empty($master)) echo $form->labelEx($model, 'reclaimed'); ?>

        <?php
        if (empty($master))
            echo $form->checkBox($model, 'reclaimed', array(
                'template' => '{input} {labelTitle}',
                'class' => 'chclass',
               // 'visible' => 'FALSE',
                'onchange' => 'javascript:'
                . 'if(this.checked)'
                . ' document.getElementById("Engine_recovered").value= new Date().toLocaleDateString() +" "+ new Date().toLocaleTimeString();'
                . 'else document.getElementById("Engine_recovered").value="";'
                    )
            );
        ?>
        <?php if (empty($master)) echo $form->error($model, 'reclaimed'); ?>
    </div>

на display none ноль реакции
  • Вопрос задан
  • 425 просмотров
Решения вопроса 1
des1roer
@des1roer Автор вопроса
ученье - свет, а неученье - приятный полумрак
<?php if (empty($master)) echo $form->textArea($model, 'act_end', array('rows' => 6, 'cols' => 50)); 
        Yii::app()->getClientScript()->registerScript('myscript','$("#Engine_act_end").keyup(function() {
   document.getElementById(\'Engine_reclaimed\').style.display="block";
});');
        ?>


0---
<div class="row" >
        <?php if (empty($master)) echo $form->labelEx($model, 'reclaimed'); ?>

        <?php
        if (empty($master))
            echo $form->checkBox($model, 'reclaimed', array(
                'template' => '{input} {labelTitle}',
                'class' => 'chclass',
               // 'visible' => 'FALSE',
                'onchange' => 'javascript:'
                . 'if(this.checked)'
                . ' document.getElementById("Engine_recovered").value= new Date().toLocaleDateString() +" "+ new Date().toLocaleTimeString();'
                . 'else document.getElementById("Engine_recovered").value="";'
                    )
            );
        ?>
        <?php if (empty($master)) echo $form->error($model, 'reclaimed'); ?>
    </div>
 <script type='text/javascript'>
               document.getElementById('Engine_reclaimed').style.display = 'none';
            </script>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ajax лучше - подгружайте поля по мере заполнения предыдущих
ну или js - скриптик - просто снимайте disable по мере заполения
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы