js中如何对django模板中的变量进行赋值
问题是这样的:在views.py文件中,文件如下:defindex(req):company_contact='联系我们'company_about='关于我们'comp...
问题是这样的:
在views.py文件中,文件如下:
def index(req):
company_contact = '联系我们'
company_about = '关于我们'
company = ""
return render_to_response("about.html", locals())
我希望根据当前网页的地址是以about结尾,还是contact结尾,来分别对company赋予comoany_about,或者赋予company_contact,并在html中展示{{company}}的值,但下面这种写法是错误的,哪位朋友能够指导一下,十分感谢
在html页面中
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>关于我们</title>
<script type="text/javascript">
function load()
{
var currentUrl = window.location.search;
var div_obj = document.getElementById("div_id");
var index = currentUrl.indexOf("=");
if(index != -1)
{
//截取出是哪个页面
var value = currentUrl.substring(index + 1 , currentUrl.length );
if(value == "about")
{
var p_obj = document.createElement("p");
p_obj.innerHTML = "这是关于我们页面 {{company_about}}";
{{company}} = {{company_about}};
document.body.appendChild(p_obj);
}
else if(value == "contact")
{
var p_obj = document.createElement("p");
p_obj.innerHTML = "这是联系我们页面 {{company_contact}}";
{{company}} = {{company_about}};
document.body.appendChild(p_obj);
}
}
else
{
alert("找不到");
}
//alert(currentUrl);
}
</script>
</head>
<body onload="load()">
<input type="button" value="返回主页面" onclick="java:location.href='../index'"/>
<label>{{company}}</label>
<div id="div_id">
</div>
</body>
</html> 展开
在views.py文件中,文件如下:
def index(req):
company_contact = '联系我们'
company_about = '关于我们'
company = ""
return render_to_response("about.html", locals())
我希望根据当前网页的地址是以about结尾,还是contact结尾,来分别对company赋予comoany_about,或者赋予company_contact,并在html中展示{{company}}的值,但下面这种写法是错误的,哪位朋友能够指导一下,十分感谢
在html页面中
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>关于我们</title>
<script type="text/javascript">
function load()
{
var currentUrl = window.location.search;
var div_obj = document.getElementById("div_id");
var index = currentUrl.indexOf("=");
if(index != -1)
{
//截取出是哪个页面
var value = currentUrl.substring(index + 1 , currentUrl.length );
if(value == "about")
{
var p_obj = document.createElement("p");
p_obj.innerHTML = "这是关于我们页面 {{company_about}}";
{{company}} = {{company_about}};
document.body.appendChild(p_obj);
}
else if(value == "contact")
{
var p_obj = document.createElement("p");
p_obj.innerHTML = "这是联系我们页面 {{company_contact}}";
{{company}} = {{company_about}};
document.body.appendChild(p_obj);
}
}
else
{
alert("找不到");
}
//alert(currentUrl);
}
</script>
</head>
<body onload="load()">
<input type="button" value="返回主页面" onclick="java:location.href='../index'"/>
<label>{{company}}</label>
<div id="div_id">
</div>
</body>
</html> 展开
1个回答
展开全部
django模版变量是属于后台服务器端的,而Js是前台的,没法给它们赋值。你应该在服务器段就赋值,然后传给前端页面,render_to_response这个函数是可以添加模版变量的,到时候直接在页面上使用就可以了,具体你可以查查render_to_response这个函数的用法
追问
朋友您好,我不能在js中写成如下形式吗:加入我在views.py中定义了一个变量name="guanyu"
我能够在js中改变成
function changeName()
{
{{name}} = "zhangfei";
}
能这样吗?谢谢
追答
你这变量名都是不确定的,到时候你前台怎么调用这个变量呢
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询