访问Javascript变量
我有以下代码:访问Javascript变量,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有以下代码: $('button#monbtn').click(function() { var username = $('#username').val(); var msg = $('#msg').val(); var url = "{{ path('ajax_subcategories', {'username': username,'msg':msg})|escape('js') }}"; } 我从输入中获取用户名和消息,我想将它们添加到url中,但我得到一个错误,即
$('button#monbtn').click(function() {
var username = $('#username').val();
var msg = $('#msg').val();
var url = "{{ path('ajax_subcategories', {'username': username,'msg':msg})|escape('js') }}";
}
我从输入中获取用户名和消息,我想将它们添加到url中,但我得到一个错误,即变量username不存在 您没有写入username变量,而是将单词
username
直接写入字符串中。因此,模板解析器(我猜)说它自己不知道这个变量
在JS中,必须按如下方式打印变量:
var url = "{{ path('ajax_subcategories', {'username': "+username+",'msg':"+msg+"})|escape('js') }}";
您的变量将不会被识别为字符串。将变量连接到最终的字符串url中
$('button#monbtn').click(function() {
var username = $('#username').val();
var msg = $('#msg').val();
var url = "{{ path('ajax_subcategories', {'username': " + username + ",'msg':" + msg + "})|escape('js') }}";
}
字符串中的concat?它表示哪个变量不存在?
url
变量将不存在于该函数之外。研究范围界定。至于分配给url
的内容,您只是在写字符串。您需要跳过字符串,勾选变量,然后继续字符串。考虑使用模板字符串。code>`Hello${username}`由于他从未尝试使用该变量,因此不会从这里出现此错误。。它很可能来自没有显示的地方,很可能是一个范围问题,认为问题是在{{与字符串的其余部分串联,解析器不考虑{{ }〕。作为字符串。我尝试了这一点,但我仍然得到字符串而不是值:例如,如果用户名值是john,我仍然在数据库中得到+username+,我真的不明白为什么会这样。尝试在创建用户名值后立即控制台。记录用户名值。然后你会得到什么?