python flask деактивирован, отметьте флажок и получите идентификатор - PullRequest
2 голосов
/ 19 апреля 2020

Я хочу установить две категории с полем выбора

<select name="categories" class="form-control">
    <option value="">Choose</option>
    <option value="0">Categori 0</option>
    <option value="1">Categori 1</option>
</select>

, тогда появятся флажки в двух разных категориях

<input class="form-check-input" name="N1" type="checkbox" id="a1" value="A" disabled>
<input class="form-check-input" name="N1" type="checkbox" id="a2" value="B" disabled>
<input class="form-check-input" name="N1" type="checkbox" id="a3" value="C" disabled>

<input class="form-check-input" name="N2" type="checkbox" id="a4" value="X" disabled>
<input class="form-check-input" name="N2" type="checkbox" id="a5" value="Y" disabled>
<input class="form-check-input" name="N2" type="checkbox" id="a6" value="Z" disabled>

и код скрипта. Если я выберу категорию 1 name = "N1", если я выберу категорию 2 name = "N2", флажок будет активным.

        $(document).ready(function(){
         $('select[name="categories"]').change(function(){
           $('input[name="N1"]').prop('disabled',this.value != 1 ?false:true);
         });
         $('select[name="categories"]').change(function(){
           $('input[name="N2"]').prop('disabled',this.value != 0 ?false:true);
         });
        });

Пока все готово. Однако я не могу вызвать id со значением из маршрутов.

@bp.route('/activity_type_form', methods=['GET', 'POST'])
@login_required
def activity_type_form():
    if request.method == 'POST':
        data1 = request.form.get('a1')
        data2 = request.form.get('a2')
        ..........
        ..........
    return render_template('activity_type_form.html', title=_('Company Profile'))

возможно, я смогу продолжить, набрав name = "N1", name = "N2", name = "N3", чтобы я мог получить имя значение я хочу от маршрутов. Но я не смог найти способ массового присвоения именных значений коду сценария.

$('input[name="N1", name="N2", name="N3"]').prop('disabled',this.value != 1 ?false:true);

Моя цель - просто установить флажок в выбранной категории. Может быть, сделать других невидимыми проклятыми. Или, запустив код сценария над значениями «id», чтобы активировать / деактивировать только выбранную категорию. Ваши комментарии и предложения будут приветствоваться. Спасибо за ваши ценные идеи заранее ..

1 Ответ

0 голосов
/ 19 апреля 2020

я нахожу способ ... не идеальный, но ..

$('input[name="N1"], input[name="N2"], input[name="N3"]').prop('disabled',this.value != 1 ?false:true);

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...