Поле ввода доступно только для чтения, если оно имеет значение из базы данных, в противном случае, если оно равно нулю, оно должно быть доступно для редактирования

#javascript #php #html #css

Вопрос:

Я новичок в этом сообществе, я высоко ценю Вашу помощь. Это моя строка кода:

<input type="text" class="form-control" id="fines" name="fines" placeholder = "Amount Penalty" required>

Мой код Javascript:

 
$(document).ready (function(){



  if($(this).val()==""){
    $('#fines').attr('readOnly','false');
  }
  

});

</script>```




The thing that I want to achieve is that when clicking the field with no value it must be editable and if it has a value from the database it will remain a read-only field. 

Your help is highly appreciated thank you!!



  
 

Комментарии:

1. Вопрос нуждается в более подробной информации. Вы заполняете существующие данные о загрузке?

2. Пожалуйста, предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.

Ответ №1:

Вы можете сделать что-то подобное, так как вы используете переменную php для ввода текста.

Способ 1:-

 <?php
    if( $row['fines'] == '' || $row['fines'] == NULL){
  echo '<input type="text" class="form-control" value="" id="fines" name="fines" placeholder = "Amount Penalty" required>';
    }
    else{
  echo '<input type="text" class="form-control" value="'.$row['fines'].'" id="fines" name="fines" placeholder = "Amount Penalty" readonly>';
    }
?>
 

Способ 2:-

 <?php
    if( $row['fines'] == '' || $row['fines'] == NULL){
      echo '<input type="text" class="form-control" value="" id="fines" name="fines" placeholder = "Amount Penalty" required>';
    }
    else{
      echo $row['fines'];//Show it as plain text, ez
    }
?>
 

Чтобы отметить :- Когда вы используете Method 1:- , все еще есть шансы сделать этот вводимый текст доступным для записи, просто проверить его и изменить значение было бы достаточно легко для пользователя, я думаю Method 2:- , что это намного лучше.