【发布时间】:2013-12-16 21:57:46
【问题描述】:
我有一个 sql 数据库,其中每一行都包含文本段落。我想在它自己的 html textarea 中显示每一行文本。我正在使用python生成html页面。我尝试了以下方法,但 textarea 的正文始终为空。有谁知道我可以做些什么来解决这个问题?
# didn't work
# dict = {'example':results[i]["Teaser"].replace("\"", "\\\"").replace("<", "<").replace(">", ">"), 'arg':results[i]["GImageID"]}
# s = "<br><textarea class=\"\" rows=\"2\" cols=\"20\" id=\"extra{arg}\">maybe1 - {example}</textarea>".format(**dict)
# gives an error on the d even though a tutorial said I should do it this way
# s = "<br><textarea class=\"\" rows=\"2\" cols=\"20\" id=\"extra{arg:d}\">maybe2 - {example:d}</textarea>".format(**dict)
#extra += s
#------------------------------------------------------
teaser = results[i]["Teaser"].replace("\"", "\\\"").replace("<", "<").replace(">", ">")
# didn't work - empty
# extra += "<br><textarea class=\"\" rows=\"2\" cols=\"20\" id=\"extra{arg}\">maybe3 - {example}</textarea>".format(example=teaser, arg=results[i]["GImageID"])
# didn't work - empty
# extra += "<br><textarea class=\"\" rows=\"2\" cols=\"20\" id=\"extra{arg}\">maybe3.5 - {example}</textarea>".format(example=results[i]["GImageTeaser"].replace("\"", "\\\"").replace("<", "<").replace(">", ">"), arg=results[i]["GImageID"])
# didn't work - empty
# t = Template("<br><textarea class=\"\" rows=\"2\" cols=\"20\" id=\"extra$arg\">maybe4 - $example</textarea>")
# s = t.substitute({ 'example': results[i]["Teaser"].replace("\"", "\\\"").replace("<", "<").replace(">", ">"), 'arg': results[i]["GImageID"]})
# extra += s
# didn't work - empty
# html = Template("<br><textarea class=\"\" rows=\"2\" cols=\"20\" id=\"extra$arg\">maybe5 - $example</textarea>")
# result = html.safe_substitute(example=teaser,arg='Vishnu')
# result = html.safe_substitute(example=results[i]["Teaser"].replace("\"", "\\\"").replace("<", "<").replace(">", ">"),arg='Vishnu')
# extra += result
# didn't work - empty
# extra += """<br><textarea class=\"\" rows=\"2\" cols=\"20\" id=\"extra%d\">maybe6 - %s</textarea>""" % (results[i]["GImageID"], results[i]["Teaser"].replace("\"", "\\\"").replace("<", "<").replace(">", ">"))
上面的文字在for循环中
for i in range(len(results)):
我已经输出了文本 results[i]["Teaser"] 来验证它不是空的。 GImageID 打印得很好,但包含段落的 Teaser 文本始终为空。
如果您需要任何其他信息,请告诉我。我已经被困了几个小时,我找不到任何可行的解决方案。谢谢!
【问题讨论】:
-
您是否尝试过手写
textarea看看是否有效? How can I “pre-fill” the value of a textarea in an HTML form? -
是的,我去 w3schools.com 做了一个文本区域,并用输出填充了文本的正文。