我在将函数内的局部变量传递给另一个全局变量以便在模型中的其他地方使用它时遇到了麻烦。
这个想法是在 HTML 中创建一个输入字段并在其中输入字符串。我在帮助下设法获取输入字符串,但无法在初始函数之外获取它们。
HTML
<form>
<input type="text" name="city" placeholder="enter city here">
<input type="submit" value="Submit">
</form>
JavaScript:
var place;
$('form').on('submit', function(e) {
e.preventDefault();
var city = $('input[name=city]').val();
place = city;
});
console.log(place);
如果我将“console.log”放在 place = city
的正下方,那么我就会以正确的方式获得所有输入。然而,现在的代码方式只能在控制台中显示undefined
。
最佳答案
因为submit
尚未触发。所以当然什么都没有改变。如果您需要函数中的值,您可以将其编写为async
,并等待在触发事件时解析的 promise 。
关于javascript - 范围:在 JavaScript 中将局部变量传递给全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49449399/