jStepper и получение maxValue из атрибута ввода - PullRequest
0 голосов
/ 04 февраля 2012

У меня есть текстовое поле

<input id="mytextbox" class="skill" type="text" rel="10">

, и я использую плагин jquery jStepper.Как долго я использую непостоянные предельные значения, все работают отлично:

$('.skill').jStepper({ minValue: 0, maxValue: 20 });

Проблема в том, что я хочу получить maxValue из параметра "rel":

$('.skill').jStepper({minValue: 0, maxValue: parseInt($(this).attr('rel'))});

Тогда максимальный предел не работает.Что я могу сделать, чтобы это работало?Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 21 февраля 2012

Так приятно видеть, что мой плагин используется! : D

Если вы знаете, что у вас есть только одно поле для присоединения jStepper, то вы можете сделать следующее:

var jqField = $('.skill');
var intMaxValue = parseInt(jqField.attr('rel'), 10);

jqField.jStepper({ minValue: 0, maxValue: intMaxValue });

Конечно, чтобы этот подход работал, вы должны быть уверены, что атрибут rel является числовым значением.

Обратите внимание, что я передаю 10 в качестве второго параметра parseInt ().
Прочитайте почему здесь: http://www.w3schools.com/jsref/jsref_parseInt.asp

Если у вас несколько полей, описанный выше подход не будет работать.
В этом случае требуется нечто подобное:

$('.skill').each(function() {
    var jqThis = $(this);
    var intMaxValue = parseInt(jqThis.attr('rel'), 10);

    jqThis.jStepper({ minValue: 0, maxValue: intMaxValue });
});

Все вышеперечисленное непроверено, но я надеюсь, что вы поняли основную идею:)

0 голосов
/ 04 февраля 2012

Вы уверены, что parseInt($(this).attr('rel')) возвращает правильный результат? Попробуйте использовать console.log для вывода значения, которое вы используете (и, возможно, его класс).

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