Вычисление двух элементов onkeyup - Как я могу преобразовать это в JQuery? - PullRequest
2 голосов
/ 11 ноября 2010

У меня проблемы с преобразованием моих скриптов в jQuery.Как я могу вычислить два элемента одновременно?

<script type="text/javascript">
function Compute(target, currentValue){
if(parseInt(currentValue.value) == 0 || parseInt(currentValue.value) > parseInt(target.value))
{
   alert("That Value is not Valid");
}       
}
</script>

<input type="text" id="frm1" name="frm1" onkeyup="Compute(document.getElementById('frm1a'), this);"/> <br>
<input type="hidden" id="frm1a" name="frm1a" value="90"/> <br>

<input type="text" id="frm2" name="frm2" onkeyup="Compute(document.getElementById('frm2a'), this);"/> <br>
<input type="hidden" id="frm2a" name="frm2a" value="50"/> <br>

<input type="text" id="frm3" name="frm3" onkeyup="Compute(document.getElementById('frm3a'), this);"/> <br>
<input type="hidden" id="frm3a" name="frm3a" value="10"/> <br>

Ответы [ 2 ]

1 голос
/ 11 ноября 2010

Что-то вроде

$(function(){
    $("input:text[name*='frm']").bind("keyup", function(){
        var currentValue = $(this);
        var target = $("#" + currentValue.attr("id") + "a");
        var currentValueVal = currentValue.val();

        if (parseInt(currentValueVal) === 0 || parseInt(currentValueVal) > parseInt(target.val()))
        {
             alert("That Value is not Valid");
        }
    });
});

См. рабочая демонстрация

0 голосов
/ 11 ноября 2010

Я не вижу большого преимущества в преобразовании этого в jQuery ... там не так много javascript и разметка не приносит огромной пользы от добавления функций jQuery, и вашим пользователям придется загружать библиотеку jQuery при использованииВаш сайт (маленький, но все же ...)

Я мог бы только предложить удалить document.getElement и заменить его на jQuery.

<input type="text" id="frm1" name="frm1" onkeyup="Compute($('#frm1a'), this);"/> <br>
<input type="hidden" id="frm1a" name="frm1a" value="90"/> <br>

Хотя я открыт для исправления

...