Py学习  »  问与答

Re:如何为button的属性onclick传参?

django • 9 年前 • 6833 次点击  

假设在一视图中定义了一个简易模板,并将其作为字符串赋值给一个变量,如下所示: def view(request): string = '<hr><p>我的段落</p>'

template = """{%% extends "base_site.html" %%}{%% block content %%}"""
template += """<button type="button" onclick="displayData(string)">DisplayData</button>{%endblock%}"""

c = RequestContext(request,{'string':string})
t = Template(template)
return HttpResponse(t.render(c))

问题:在网页上点击button按钮,事件没有响应,如果直接将string的内容'<hr><p>我的段落</p>'作为onclick的参数传递,则能成功响应,但我不想通过此方法,请问如何使用上述方法进行传参?

附录:base_site.html中定义的事件函数为: <script> function displayData(string){ var string1 = string.toString() document.getElementById("displayData").innerHTML=string1;

}

</script>

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/678
 
6833 次点击  
文章 [ 1 ]  |  最新文章 9 年前
malukuan
Reply   •   1 楼
malukuan    9 年前

whatever.html

{% extends "base_site.html" %}{% block content %} <button type="button" onclick="displayData({{strings}})">DisplayData</button>{%endblock%}

whatevery.py

from dajngo.shortcuts import render


def whatever(request):
    strings = '<hr><p>我的段落</p>'
    return render(request, 'whatever.html', {'strings':strings})

你现在代码不报错?