小编wor*_*ogy的帖子

使用两个提交按钮提交jQuery ajax表单

我有一个看起来像这样的表单:

<form action="/vote/" method="post" class="vote_form">
    <input type="hidden" name="question_id" value="10" />
    <input type="image" src="vote_down.png" class="vote_down" name="submit" value="down" />
    <input type="image" src="vote_up.png" class="vote_up" name="submit" value="up" />
</form>
Run Code Online (Sandbox Code Playgroud)

当我绑定到表单的submit($("vote_form").submit())时,我似乎无法访问用户单击的图像.所以我试图绑定到点击图像本身($(".vote_down, .vote_up").click()),它总是提交表单,无论我是否尝试

  • 返回false;
  • event.stopPropogation(); 要么
  • event.preventDefault();

因为所有这些都是形式事件.

  1. 我应该将$ .post()附加到form.submit()事件,如果是这样,我如何判断用户点击了哪个输入,或者

  2. 我应该将$ .post()附加到图像点击,如果是这样,我该如何阻止表单提交.

这是我的jQuery代码现在的样子:

$(".vote_up, .vote_down").click(function (event) {
    $form = $(this).parent("form");
    $.post($form.attr("action"), $form.find("input").serialize() + {
        'submit': $(this).attr("value")
    }, function (data) {
        // do something with data
    });
    return false; // <--- This doesn't prevent form from submitting; what does!?
});
Run Code Online (Sandbox Code Playgroud)

forms ajax jquery input submit

21
推荐指数
1
解决办法
4万
查看次数

Alpha透明PNG在Mobile Safari中无法正确显示

我在各种网站上使用一些半透明的PNG作为背景图像.这些通常类似于具有30%不透明白色层的1x1图像.

我注意到Mobile Safari没有正确显示它们,给它们一个更深/灰色的色调.

这是一个MobileSafari错误(我无法想象),还是我需要对我的页面或PNG做一些不同的事情?

(以下是我创建PNG的方法:在Photoshop中,创建一个1x1透明画布.在第1层中绘制一个白色矩形.将不透明度设置为30%,将Web保存为24位PNG,具有透明度.)

iphone png transparency mobile-safari

17
推荐指数
1
解决办法
1万
查看次数

使用celery更新Django模型字段时避免使用递归save()

我重写模型的save()方法来调用Celery的异步任务.该任务还保存了模型,因此我最终得到了重复调用Celery任务的递归情况.这是代码:

模型的保存方法:

def save(self, *args, **kwargs):
    super(Route, self).save(*args, **kwargs)
    from .tasks import get_elevation_data
    get_elevation_data.delay(self)
Run Code Online (Sandbox Code Playgroud)

get_elevation_data任务:

from celery.decorators import task

@task()
def get_elevation_data(route):
    ...
    route.elevation_data = results
    route.save()
Run Code Online (Sandbox Code Playgroud)

我怎样才能避免这种递归?

django recursion save celery

12
推荐指数
1
解决办法
1807
查看次数

标签 统计

ajax ×1

celery ×1

django ×1

forms ×1

input ×1

iphone ×1

jquery ×1

mobile-safari ×1

png ×1

recursion ×1

save ×1

submit ×1

transparency ×1