Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.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
带文本框的Javascript setInterval()_Javascript_Jquery_Loops_Setinterval - Fatal编程技术网

带文本框的Javascript setInterval()

带文本框的Javascript setInterval(),javascript,jquery,loops,setinterval,Javascript,Jquery,Loops,Setinterval,Javascript: var header = $("#inputHeader").val(); function coolInput() { if (header === "") { $("#displayHeader").text("Type Something!"); } else if(header !== "") { $("#inputHeader").keyup

Javascript:

        var header = $("#inputHeader").val();

    function coolInput() {
        if (header === "") {
            $("#displayHeader").text("Type Something!");
        }
        else if(header !== "") {
            $("#inputHeader").keyup(function () {
                var value = $(this).val();
                $("#displayHeader").text(value);
            }).keyup();
        }
    }

    setInterval(coolInput, 1);
HTML:

        <blockquote>
            <p id="displayHeader">jQuery no worky.</p>
            <small><?php echo $_SESSION['user']; ?></small>
        </blockquote>

jQuery没有工作


我的jQuery确实有效,因为段落被更改为“键入某物!”,但当我在文本框中输入某物时,该值不会更改。

val()的返回值是一个普通字符串。它不是实时更新的

每次调用
coolInput
函数时,都需要在jQuery包装器对象上调用
val()

var inputHeader = $("#inputHeader");
function coolInput() {
    var header = inputHeader.val();

val()
的返回值是一个普通字符串。它不是实时更新的

每次调用
coolInput
函数时,都需要在jQuery包装器对象上调用
val()

var inputHeader = $("#inputHeader");
function coolInput() {
    var header = inputHeader.val();

您不需要每隔一毫秒指定
keyup
事件。你的剧本就是这么做的

您可以通过以下方式进行更改:

var header = $("#inputHeader");

function coolInput() {
    if (header.val() === "") {
        $("#displayHeader").text("Type Something!");
    }
    else if(header.val() !== "") {
        $("#displayHeader").text(header.val());
    }
}

setInterval(coolInput, 1);

您不需要每隔一毫秒指定
keyup
事件。你的剧本就是这么做的

您可以通过以下方式进行更改:

var header = $("#inputHeader");

function coolInput() {
    if (header.val() === "") {
        $("#displayHeader").text("Type Something!");
    }
    else if(header.val() !== "") {
        $("#displayHeader").text(header.val());
    }
}

setInterval(coolInput, 1);

为什么每1ms应用一次keyup事件处理程序。只需定义一次keyup事件

在keyup处理程序函数中,您可以轻松测试值。
如果这对你没有用,让我知道,我会从你的帖子中删除帖子


编辑:刚刚注意到第二个
.keyup()
,就在具有处理函数的后面。为什么要将它放在那里?

为什么每1ms应用一次keyup事件处理程序。只需定义一次keyup事件

在keyup处理程序函数中,您可以轻松测试值。
如果这对你没有用,让我知道,我会从你的帖子中删除帖子


编辑:刚刚注意到第二个
.keyup()
,就在具有处理函数的后面。你为什么把它放在那里?

@user1185220-不获取你测试的
头的值。啊,好的,我看到了。谢谢@user1185220-不获取您正在测试的
头的值。啊,好的,我看到了。谢谢