Ao utilizar o evento enableFields para proteger os campos, é adicionado o caractere underline (_) nas propriedade name e id. Com isso as manipulações via JavaScript puro ou pela biblioteca jQuery não terão efeitos, devido a alteração destas propriedades: Exemplo enableFields.js:
Bloco de código |
---|
function enableFields(form) {
var atividade = parseInt(getValue('WKNumState'));
if(atividade == 0 || atividade == 4){
form.setEnabled('loginsolicitante', false);
}
if(atividade == 5){
form.setEnabled('nomesolicitante', false);
}
} |
HTML: Bloco de código |
---|
<div class="panel-body">
<div class="row inicial" id="inicialRow0">
<div class="col-xs-12 col-md-2 col-sm-12 col-lg-2">
<div class="form-group">
<label class="control-label" for="loginsolicitante">Login</label>
<input type="text" class="form-control" name="loginsolicitante" id="loginsolicitante" value="adm"/>
</div>
</div>
<div class="col-xs-12 col-md-4 col-sm-12 col-lg-4">
<div class="form-group">
<label class="control-label" for="nomesolicitante">Solicitante</label>
<input type="text" class="form-control" name="nomesolicitante" id="nomesolicitante" value="Administrador"/>
</div>
</div>
</div>
</div> |
Resultado no navegador/console, onde o campo loginsolicitante agora é _loginsolicitante e o campo nomesolicitante permanece igual, pois a lógica implementada indica que será bloqueado na próxima movimentação:
|