Почему cakePHP выбрасывает Blackhole после изменения "отключенного" поля через jQuery?

У меня есть форма с флажком и 2 полями выбора. У меня есть функция javacript/jQuery, которая отключает поля выбора, флажок установлен:

function disable(id) {
    if($("#checkbox"+id).is(':checked')){
        $("#selectbox1"+id).prop('disabled',true);
        $("#selectbox2"+id).prop('disabled',true);
    }
    else {
        $("#selectbox1"+id).prop('disabled',false);
        $("#selectbox2"+id).prop('disabled',false);
    }
}

Все работает хорошо. Тем не менее, когда я устанавливаю флажок и отправляю форму, запрос помечается как "черный", однако, единственное, что меняется в этой функции - это добавление "отключено" к <select> теги.

У кого-нибудь есть идеи, как это решить?

1 ответ

Решение

отключенные входы не находятся в данных POST

Таким образом, с точки зрения сервера, выборочная пометка входа как отключенного - это то же самое, что выборочное удаление его из формы - что было бы обнаружено как подделка формы.

Возможные решения

Либо не отключайте этот выбор, либо используйте unlockField, чтобы разрешить манипулировать этим выбором с помощью JavaScript.

Другие вопросы по тегам