Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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设置超时函数_Jquery - Fatal编程技术网

jQuery设置超时函数

jQuery设置超时函数,jquery,Jquery,这个函数有什么问题 function getTuittingCookie() { var tuitting_cookie = $.cookie("tuittingID"); $("#tuittingID").val(tuitting_cookie); //alert(tuitting_cookie); setTimeout(getTuittingCookie, 2000); } 它应每2秒在字段上写入一次值: <input id="tuittingID" style="display:n

这个函数有什么问题

function getTuittingCookie() {
var tuitting_cookie = $.cookie("tuittingID");
$("#tuittingID").val(tuitting_cookie);
//alert(tuitting_cookie);
setTimeout(getTuittingCookie, 2000);
}
它应每2秒在字段上写入一次值:

<input id="tuittingID" style="display:none" value=""/>

但是它却什么也没写


您能帮我一下吗?

您可能想写入div,而不是输入,或者您的输入需要一个type属性,不应该显示为:none


(另外,可能要说明一个明显的问题,确保调用了函数,并且cookie实际上包含内容。)

是否在代码中调用函数
gettuitingcookie()
。 这段代码对我有效,请参见

而不是使用代码

你可以用

<input id="tuittingID" type="hidden" value=""/>

假设您首先调用此函数,一切看起来都很好

$.cookie()
如果找不到cookie并使用
.val(null)为输入值赋值,则将返回
null
是可以接受的

至于调用该函数,您可能希望在中这样做:

您还可以考虑使用隐藏的输入<代码> <代码>,因为它自动隐藏自己,而不必对显示大惊小怪:没有。

同样,这也是有争议的,但是使用字符串表达式而不是函数名本身来调用setTimeout()可能更安全,以避免空引用

setTimeout('getTuittingCookie()', 2000);

这个代码在我现在的兄弟身上运行得很好

$(document).ready(function() {
    setTimeout(function(){
        getTuittingCookie();
    }, 2000);
});
function getTuittingCookie() {
    var tuitting_cookie= Math.floor(Math.random()*11)
    $("#tuittingID").val(tuitting_cookie); 
}

附带问题:为什么不使用
而不是添加
style=“display:none”
?或者正如Ray Toal所问,您是否打算使用隐藏的
div
setTimeout('getTuittingCookie()', 2000);
$(document).ready(function() {
    setTimeout(function(){
        getTuittingCookie();
    }, 2000);
});
function getTuittingCookie() {
    var tuitting_cookie= Math.floor(Math.random()*11)
    $("#tuittingID").val(tuitting_cookie); 
}