使用此代码,控制台显示“ReferenceError:myVar未定义”。 如果我在函数之前初始化变量,那么它的值不会改变。 怎么了?
谢谢你的帮助!
$('#origVal').keyup(function ()
{
myVar = $('#origVal').val();
});
console.log(myVar);
更新
我尝试恢复使用keyup输入的文本。 目标是给dat.gui提供恢复的内容,以三维显示它。我知道也许我这样做错了......
<body>
<input type='text' id='origVal'>
<script>
var myVar = "";
$('#origVal').keyup(function ()
{
myVar = $('#origVal').val();
});
document.write(myVar); //It doesn't work !
var guis = {
TextGeometry : function( mesh )
{
var data = {
text : myVar, //It doesn't work !
...
</script>
</body>
答案 0 :(得分:0)
如果您尚未定义关键字val
,请将其放在myVar
前面。
答案 1 :(得分:0)
尝试将console.log(myVar)放在函数中。即使您声明了一个全局变量,它可能由于某种原因而不在其范围内,并且正在抛出错误。如果有效,请告诉我。
答案 2 :(得分:0)
<html>
<head>
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script>
$(document).ready(function () {
var myVar = "";
$('#origVal').keyup(function () {
myVar = $('#origVal').val();
console.log(myVar);
});
});
</script>
</head>
<body>
<input id="origVal" />
</body>
</html>
答案 3 :(得分:0)
var myVar = "";
$('#origVal').keyup(function() {
myVar1 = $(this).val();
func(myVar1)
});
function func(myVar){
console.log(myVar);
}
试试这种方式
答案 4 :(得分:0)
我通常不建议保存到窗口,但是一种方法可以完成此操作并在之后使用该值将其保存到窗口中。所以:
DocumentType
这会吐出值而不是console.log,你可以做document.write或者你试图用变量做的任何事情。请注意,我附加了&#34; window _&#34;在变量之前。每当我使用它时,我都会这样做,以确保我创建的变量不会覆盖窗口上的另一个变量(使其唯一)。希望这会有所帮助。