Этот код работает нормально ... хотя это может быть трудно читать. Однако я хочу соответствовать jshint.com и, возможно, сделать его более читабельным.
Есть так много разных способов изменить это, что я не знаю лучшего?
В основном мне нужно иметь возможность включать / выключать client_validatin. И если данные подтверждаются, я делаю ajax-вызов на сервер.
Это было похоже на хак, когда я написал это, особенно использование client_fail (т.е. использовалось для определения, прошел ли клиент проверку.
Для этого кода
function interface_signin()
{
var form_name='signin',
form_elements=document.forms[form_name].elements,
response_div='signin_response',
client_fail=0;
if(arc.client_validation===1)
{
(client_fail=1)&&check_empty(form_elements,response_div,messages.empty)&&check_item(patterns.email,form_elements[0],response_div,messages.email)&&check_item(patterns.pass,form_elements[1],response_div,messages.validate)&&(client_fail=0);
}
if(client_fail===0){ajax('arche_model.php',serialize(form_name)+'&a=signin',ajax_signin,response_div);}
}
Я получаю ошибки
Line 466: (client_fail=1)&&check_empty(form_elements,response_div,messages.empty)&&check_item(patterns.email,form_elements[0],response_div,messages.email)&&check_item(patterns.pass,form_elements[1],response_div,messages.validate)&&(client_fail=0);
Ожидал присваивания или вызова функции и вместо этого увидел выражение.