繁体   English   中英

输入字段值未返回我期望的值

[英]Input field value not returning the value i expected

Javascript和HTML


 $( document ).ready(function() { var inputMessage = $("#inputMessage"); var sendButton = $("#sendButton"); console.log(inputMessage.value); //->undefined inputMessage.value = "hello"; console.log(inputMessage.value); //->"hello" 
 <!DOCTYPE html> <html lang="es"> <head> <title>Chat de Hernan</title> <!--jquery--> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script type="text/javascript" src="https://cdn.socket.io/socket.io-1.4.5.js"></script> <!--bootstrap--> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" integrity="sha384-fLW2N01lMqjakBkx3l/M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV+0En5r" crossorigin="anonymous"> </head> <body> <div class="input-group"> <input id="inputMessage" class="form-control" type="text" value="goodbye" placeholder="Escriba aqui"> <span class="input-group-btn"> <button id="sendButton" class="btn btn-default">Enviar</button> </span> </div> <!--js--> <script type="text/javascript" src="script.js"></script> </body> </html> 

我遇到的问题是值undefined“ hello”与值goodbye不同。

<input id="inputMessage" class="form-control" type="text" value="goodbye" placeholder="Escriba aqui">

这怎么可能? value =“ goodbye”语句指出输入具有“ goodbye”值,但是javascript表示该值是未定义的,请记住是“ hello”。

这是您需要定位的属性:

inputMessage.attr('value')

https://jsfiddle.net/mark_c/ged56amh/

定义var inputMessage = $("#inputMessage"); 使inputMessage jQuery元素具有方法val()来获取/设置元素值。

因此,请使用inputMessage.val()inputMessage.val('hello')代替“ inputMessage.value”来设置新值。

这是因为您将输入作为jQuery对象获取,但使用的是JavaScript函数。 而是将value更改为val() 另外,不要忘记关闭.ready

 $( document ).ready(function() { var inputMessage = $("#inputMessage"); var sendButton = $("#sendButton"); console.log(inputMessage.val()); //->undefined inputMessage.val("hello"); console.log(inputMessage.val()); //->"hello" }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <!DOCTYPE html> <html lang="es"> <head> <title>Chat de Hernan</title> <!--jquery--> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script type="text/javascript" src="https://cdn.socket.io/socket.io-1.4.5.js"></script> <!--bootstrap--> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" integrity="sha384-fLW2N01lMqjakBkx3l/M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV+0En5r" crossorigin="anonymous"> </head> <body> <div class="input-group"> <input id="inputMessage" class="form-control" type="text" value="goodbye" placeholder="Escriba aqui"> <span class="input-group-btn"> <button id="sendButton" class="btn btn-default">Enviar</button> </span> </div> <!--js--> <script type="text/javascript" src="script.js"></script> </body> </html> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM