Javascript jQuery按钮从输入中获取值并执行操作-它是如何工作的?

Javascript jQuery按钮从输入中获取值并执行操作-它是如何工作的?,javascript,jquery,html,jquery-ui,Javascript,Jquery,Html,Jquery Ui,我这里有一小段代码 <label for="pass">Password</label> <input type="text" id="pass" value="QWERTY"> <button for="pass">Submit!</button> 但它不起作用。你知道怎么修吗?试试这个 $("button").click(function(){ var

我这里有一小段代码

            <label for="pass">Password</label>
            <input type="text" id="pass" value="QWERTY">
            <button for="pass">Submit!</button>
但它不起作用。你知道怎么修吗?

试试这个

$("button").click(function(){
    var value=$("input#pass").val();
    if ( value === "QWERTY"){
        alert("Good!");
    }
});

jQuery有自己的内置函数,用于从输入字段获取值。

单击按钮时,应防止触发默认操作(否则表单将被提交,JS将不会执行)。访问输入值时,还应使用
val()

您还应该将代码包装在DOMReady处理程序中,以确保在运行脚本时可以访问DOM

以下是您的代码的更新版本:

$(function() {  
    $("button").click(function(e) {
        e.preventDefault();
        var the_value = $("#pass").val();

        if(value == "QWERTY")
        {
            alert("Good!");
        }
    };
});

试试这个:它更加优化…

$("button").click(function(e){
    e.preventDefault();
    var value=$("#pass")[0].value;
    if (value==="QWERTY"){
        alert("Good!");
};

您还可以删除按钮上的“for”属性,这是不正确的;)

如果您没有忘记
},您的代码应该可以工作并将代码放入dom就绪回调函数中

你可以这样写:

$("button").click(function(){
    if ($('#pass').val()==="QWERTY"){
        alert("Good!");
    };
});

我想你只是有个语法错误。您需要确保关闭函数花括号并单击关闭括号

$("document").ready(function () {

    $("button").click(function () {
        var value = $("input[id=pass]").attr("value");
        if (value === "QWERTY") {
            alert("Good!");
        }
    });
});
例如:

什么方式不起作用?你到底想让什么方式起作用?你能具体点吗?首先,你有一个明显的语法错误。您缺少了一个结束符
。您是否意识到
attr('value')
将从HTML返回值,而不是从DOM返回元素的
value
属性?(属性
value
不会更改,而属性
value
会更改(如果用户在元素/节点中键入内容或与元素/节点交互))。
val()
是否总是返回字符串?
$("document").ready(function () {

    $("button").click(function () {
        var value = $("input[id=pass]").attr("value");
        if (value === "QWERTY") {
            alert("Good!");
        }
    });
});