Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Jquery微调器中只接受正整数? 'Quantite:' [...] var newSpinner=$(“#QteSpinner”).spinner({ min:1 });_Jquery_Jquery Ui Spinner - Fatal编程技术网

如何在Jquery微调器中只接受正整数? 'Quantite:' [...] var newSpinner=$(“#QteSpinner”).spinner({ min:1 });

如何在Jquery微调器中只接受正整数? 'Quantite:' [...] var newSpinner=$(“#QteSpinner”).spinner({ min:1 });,jquery,jquery-ui-spinner,Jquery,Jquery Ui Spinner,我怎样才能限制用户只在JQuery微调器中键入数字呢 谢谢请查看此链接。我创建了一个示例,它将限制微调器中的负数 '<label id="quantite" for="quantite">Quantite : </label><input id="QteSpinner" value="1"></br>' [...] var newSpinner = $( "#QteSpinner" ).spinner({ min: 1

我怎样才能限制用户只在JQuery微调器中键入数字呢

谢谢

请查看此链接。我创建了一个示例,它将限制微调器中的负数

'<label id="quantite" for="quantite">Quantite : </label><input id="QteSpinner" value="1"></br>'

[...]

var newSpinner = $( "#QteSpinner" ).spinner({
            min: 1
        }); 
var值;
var$container=$(“#qtespiner”);
var newSpinner=$container.spinner({
民:1,,
}).focus(函数(){
value=$container.val();
}).blur(函数(){
var value1=$container.val();

如果(值1使用更改函数将非整数输入映射到合适的默认值,例如

    var value;
    var $container=$("#QteSpinner");
    var newSpinner = $container.spinner({
        min: 1,
    }).focus(function () {
        value = $container.val();
    }).blur(function () {
        var value1 = $container.val();
        if (value1<0) {
           $container.val(value);
        }
        if(isNaN(value1))
        {
           $container.val(value);
        } 

    });
这不会阻止用户键入无意义的内容,但会在微调器失去焦点时立即约束微调器中的值。如果您必须阻止键入除数字以外的任何内容,则可以使用keypress()函数执行某些操作。有关详细信息,请参阅。

使用

{小数:0}

{min:0}

或者在选项中同时使用两者

我就是这样做的:

var myspinner = $( "#myspinner" ).spinner(
    { 
    min: 1,
    change: function (event, ui ) {
        var val = myspinner.spinner( "value" );
        myspinner.spinner("value", parseInt(val,10) || 1);
        /* 
        var val = $(this).spinner( "value" );
        $(this).spinner("value", parseInt(val,10) || 1);
        */
    }
    });   
完成了

对Francisco Corrales Morales的略作改进,因为它没有将字段归零。它只删除alpha条目


});

或者您可以检查击键值,然后使用$.isNumeric()对其进行测试,如:

jQuery( "#repeat_x").keyup(function() { 
if(isNaN (jQuery(this).val() )){
    /* however only slicing off the last character instead of setting to 0 */
    jQuery(this).prop("value",jQuery(this).prop("value").slice(0, -1));
}

只需将最小值设置为0.like$(“#spinner”).spinner({min:5})@karthik我重新制定了我的问题。谢谢,但问题不是限制数字的范围,而是限制用户只键入一个数字。目前他可以键入“foo”没有问题。这是一个问题。@seb68,再次查看我的答案,我已使用更新的小提琴链接更新了我的答案。这将限制微调器中的字母。我希望这将对您有所帮助。谢谢,但我希望该用户只能键入数字。我想阻止字母的显示。例如,当我键入“f”时,它不必工作。使用此代码,用户可以键入“foo”,即使在没有焦点时字母消失。
jQuery( "#repeat_x").keyup(function() { 
if(isNaN (jQuery(this).val() )){
    /* however only slicing off the last character instead of setting to 0 */
    jQuery(this).prop("value",jQuery(this).prop("value").slice(0, -1));
}
$("#spinner").spinner({
    min: 1
}).keypress(function(e){
    key = e["originalEvent"]["key"];
    if (!$.isNumeric(key)){
        e.preventDefault();
    }
});