gpt4 book ai didi

jquery - Web2Py Ajax append 到 DIV

转载 作者:行者123 更新时间:2023-11-30 23:37:57 25 4
gpt4 key购买 nike

我正在尝试使用 AJAX 将内容 append 到 ID 为“this_div”的 div。

HTML:

<a href='#' onclick="ajax('append?what=first',
['content'],'this_div')">click</a>

<div id='this_div'></div>

Controller :

def append():
if request.vars.what == "first":
something = "ABC"
else:
something = "DEF"

return "<script>jQuery('#this_div').append('"+something+"')</script>"

这会将“something”的内容加载到 div,但不会保留以前的内容。有人能解释一下为什么会这样吗?我是 Python/Web2Py/AJAX 组合的新手..

谢谢!

最佳答案

问题是ajax()函数本身会覆盖 this_div 的内容因为这是指定的目标(即,它用返回的 <script> 元素替换 DIV 内容,然后将文本 append 到 DIV)。如果您想追加而不是覆盖,可以通过 Javascript 执行此操作,但在这种情况下,您需要指定“:eval”作为目标:

<a href='#' onclick="ajax('append?what=first', [], ':eval')">click</a>

<div id='this_div'></div>

Controller :

def append():
if request.vars.what == "first":
something = "ABC"
else:
something = "DEF"
return "jQuery('#this_div').append('%s');" % something

注意,不需要 <script>在这种情况下,标记——只需返回要执行的 Javascript。另外,如果您的append()函数不使用“内容”输入,即 ajax() 的第二个参数可以只是一个空数组(即 [] )而不是 ['content'] .

关于jquery - Web2Py Ajax append 到 DIV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14987504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com