KO JS ж / кендо, мульти условно видимый - PullRequest
0 голосов
/ 05 июля 2019

Я пытаюсь отобразить мое «Сумма не может быть меньше 1». сообщение, если пользователь вводит данные, а данные меньше 1.

<div class="form-group" data-bind="validationElement: Amount">
    <label for="Amount" data-bind="attr: {'for':'Amount'+$index()}">Amount</label>
    <input id="Amount" class="form-control" maxlength="13" type="text" placeholder="Required" required
    data-bind="attr: {id:'Amount'+$index()}, value: Amount, kendoNumericTextBox: { value: Amount, format: 'c2', spinners: false, step: 1, min:1, max:10000000000 }" />
    <span data-bind="visible: Amount() > 10000000000" style="color:#a94442;">Amount may not be greater than 10000000000.</span>
    <span data-bind="visible: Amount() && Amount() < 1" style="color:#a94442;">Amount may not be less than 1.</span>
</div>

Если я сделаю это только visible: Amount() < 1, то оно всегда будет отображаться, потому что я думаю, что пустое текстовое поле считается меньше единицы. Если я изменю его на visible: Amount(), то ничего не отобразится, пока пользователь не введет данные, как ожидалось. Я нуждаюсь в обоих, хотя, потому что это должно проверить, что пользователь вводит данные, и что данные меньше 1. Любая подсказка? По какой-то причине ему не нравится мой оператор &&.

1 Ответ

0 голосов
/ 05 июля 2019

Я понял.По-видимому, он просто не срабатывал для нуля, поэтому я добавил || Amount() === 0, и это решило проблему.

...