Как установить несколько значений по умолчанию для множественного выбора в flask-bootstrap - PullRequest
0 голосов
/ 28 апреля 2018

вид колбы:

@app.route("/")
def hello():
    return render_template('hello.html',
                           form=form,
                           working_days=['Monday', 'Tuesday', 'Wednesday', 'Friday'])

hello.html - Я использую Flask-Bootstrap

<form class="form-group" action="..." method="post">
    {{ form.csrf_token }}
    {{ wtf.form_field(form.days) }} <!-- saturday, sunday, monday, tuesday, wensday, thursday, friday -->
</form>

Результат:

<select class="form-control" id="days" multiple name="days" required>
    <option value="saturday">saturday</option>
    <option value="sunday">sunday</option>
    <option value="monday">monday</option>
    <option value="tuesday">tuesday</option>
    <option value="wednesday">wednesday</option>
    <option value="thursday">thursday</option>
    <option value="friday">friday</option>
</select>

мой вопрос: как я могу установить значения по умолчанию (working_days) на form.days?

1 Ответ

0 голосов
/ 30 апреля 2018

вот ответ (чистый javascript), поэтому все, что мне нужно было сделать, это циклически перебирать значения параметров и проверять, совпадает ли любое из значений в working_days, если да, я добавлю attr('selected', true)

где $('.form-group') - ближайший родительский элемент, который уже существовал на момент загрузки страницы.

for (var i = 1; i < $('.form-group').find('option').length + 1; i++){ 
  if ({{ working_days | safe }}.indexOf($('.form-group').find('option:nth-child(' + i + ')').val()) > -1) {
    $('.form-group').find('option:nth-child(' + i + ')').attr("selected", true)
  }
}

:)

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