如何在javascript函数中访问python对象?

时间:2011-03-16 07:32:37

标签: javascript python cherrypy genshi

这意味着现在我正在使用cherryypy和genshi框架在python上运行,我使用genshi将python变量发送到html文件,但我想在javascript函数中访问变量这样的变量,我该怎么办?...

html文件是:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:xi="http://www.w3.org/2001/XInclude"
      xmlns:py="http://genshi.edgewall.org/">
<head>
    <title>Home</title>
    <script type="text/javascript">
        function setparent(val) {
            document.getElementById("tpar").value=val;
        }
    </script>
</head>
<body>
    <div >
        <table>
            <div py:for="user in users">
                <tr>
                    <td>
                        <div title="${user.userid}" onclick="setparent('${user.userid}')">${user.fname+" "+ user.lname}</div>
                        <py:if test="user.resource.__len__() > 0">
                            <div>
                                <py:for each="res in user.resource">
                                    <div><a href="">${user.resource[res]}</a></div>
                                </py:for>
                            </div>
                        </py:if>
                    </td>
                </tr>
            </div>
        </table>
    </div>
</body>
</html>

因为我想访问py的“users”变量到javascriptfunction

你告诉我这个吗?

1 个答案:

答案 0 :(得分:1)

将值从python传递到javascript的正确方法是 - 特别是如果它们可以包含的不仅仅是普通数字或非常有限的字符集(基本上是[a-zA-Z0-9]和非引用符号) - 通过json运行值编码器(json.dumps(...)),以确保它们不会破坏任何东西。