js中如何对django模板中的变量进行赋值

问题是这样的:
在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>

django模版变量是属于后台服务器端的,而Js是前台的,没法给它们赋值。你应该在服务器段就赋值,然后传给前端页面,render_to_response这个函数是可以添加模版变量的,到时候直接在页面上使用就可以了,具体你可以查查render_to_response这个函数的用法追问

朋友您好,我不能在js中写成如下形式吗:加入我在views.py中定义了一个变量name="guanyu"
我能够在js中改变成

function changeName()
{
{{name}} = "zhangfei";
}

能这样吗?谢谢

追答

你这变量名都是不确定的,到时候你前台怎么调用这个变量呢

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网