0

简而言之:我正在寻找的是获取 img src 值 onClick() 并将所选图像传递给 python 函数以使用 PIL

说,var i = getElementById("image-id").src pass this to python def whatever(): img = src var from js fun

可能吗?我知道这是可以做到的>>>

def post(self):
    val = self.request.get("name_of_the_txt_field_to_get")
    self.request.write("val") 

但我希望变量是带有 onClick() 的图像 SRC;按钮函数,我想将此 SRC 值作为变量传递给 python 函数。

我知道 js 是客户端而 python 是服务器端,所以我希望将值传递给另一个 URL,比如 from http://localservertohttp://localserver/image

我一直在寻找解决方案,我确实遇到了一些选项:https ://github.com/atsepkov/RapydScript (但它是一个 python 到 javascript 编译器,我需要编译它)

另一个是旧的http://code.google.com/p/pyv8/但我想不通&

这个PICO似乎很有趣,我认为可以完成工作,但是我不知道如何在 GAE 上运行它

工作区:带有 Jinja2 模板的 Python 的 GAE。

4

2 回答 2

0

我假设您在询问 Javascript,因为您正在 Web 浏览器中运行某些东西。当您在浏览器中运行某些东西时,我假设您希望在任何浏览器中运行。

在这种情况下,答案是否定的,没有。

浏览器可以执行 Javascript。他们不执行python。因此,您需要在浏览器中执行 Javascript,向您的服务器发出某种 HTTP 请求,然后在 python 中处理该请求。像 pico 这样的库可以生成包装器,因此您必须编写更少的代码,但它在后台执行相同的操作。

您可以为可以执行 python 的浏览器编写某种插件。已经完成: https ://wiki.python.org/moin/WebBrowserProgramming

但是您将仅限于安装了相应插件的浏览器子集。

于 2013-09-21T16:58:25.973 回答
0

您可以使用 jQuery 执行 AJAX POST 到http://localserver/image

$(document).ready(function() {
    $("img").click(function() {
        var request = $.ajax({
            url: "/image",
            type: "POST",
            data: {imageSrc : $(this).attr("src")}
        });

        request.done(function(msg) {
            alert("Request succeeded: " + msg );
        });

        request.fail(function(jqXHR, textStatus) {
            alert( "Request failed: " + textStatus );
        });
    });
});

另请参阅:发布和获取的 Ajax 教程

于 2013-09-14T16:18:18.547 回答