我们有一个程序可以在实时环境或测试环境中运行。唯一的区别是测试环境上的 URL 包含“/test/”。在测试环境中,某些功能会导致它切换到实时环境(当 URL 被硬编码时!),所以我正在尝试解决这个问题。
我在 JavaScript 中创建了这个函数:
function GetTestMode()
{
// If "/test/" exists in URL, keep it there (we are in test mode).
var currentURL = document.URL;
var sTestMode = "";
if (currentURL.indexOf("/test/") != -1)
{
// test mode (according to URL)
sTestMode = "test/";
}
return sTestMode;
}
这由 JavaScript 函数使用并按预期工作。
但是,大部分 UI 代码都是 Python 代码(创建 HTML)。所以我想在 Python 中得到这个 JavaScript 结果。到目前为止,我有:
import cgi
import os
import sys
import re
def DrawUI (self, short=False):
print '<br />'
print '<div class="box2">'
print '<table cellspacing=0 cellpadding=0 border="0">'
print '<tr>'
sTestMode = "test mode = %s" % ('<a href="javascript:GetTestMode()" >')
print 'sTestMode = ' + sTestMode + '<br />'
这会导致此代码后面的打印语句(甚至可以是print 'hello world'
)成为一个链接,如果我单击它,它将显示浏览器中 JavaScript 函数的正确返回值。
如何才能sTestMode
包含返回值(无需用户交互)?