JQuery if语句?
问题描述:
Jquery的新功能,并想知道如何将下面的JQuery代码放在if语句中,以便它只在点击提交按钮时运行,并且在没有点击时什么也不做我知道我正在使用$(".save-button").click(function()
有没有办法把它放在一个if语句中?JQuery if语句?
JQuery代码。
$(function() {
$(".save-button").click(function() {
$.post($("#contact-form").attr("action"), $("#contact-form").serialize(), function(html) {
$("div.contact-info-form").html(html);
$('#changes-saved').append('<li>Changes saved!</li>').show().pause(1000).hide();
});
return false; // prevent normal submit
});
});
答
调用。点击和传递功能说“调用此功能,当元素被点击”
。点击()没有一个函数参数调用click事件
因此,不存在需要'如果'
答
$(".save-button").click(function() {
$.post($("#contact-form").attr("action"), $("#contact-form").serialize(), function(html) {
$("div.contact-info-form").html(html);
$('#changes-saved').append('<li>Changes saved!</li>').show().pause(1000).hide();
});
return false; // prevent normal submit
});
这会将click事件绑定到任何具有.save-button类的元素。
答
您可以将它只能提交按钮:
$(".save-button:submit")
答
好了,你可以检查type
属性点击的元素例如:
//...
if ($(this).attr('type') == 'submit')
//...
但我会建议你使用submit
事件,请记住,如果用户按Enter键,表单也可以提交:
$(function() {
$("#contact-form").submit(function() {
var $form = $(this);
$.post($form.attr("action"), $form.serialize(), function(html) {
$("div.contact-info-form").html(html);
$('#changes-saved').append('<li>Changes saved!</li>').show()
.pause(1000).hide();
});
return false; // prevent normal submit
});
});
这不是很清楚......你需要什么条件?当你不点击它时,'click'什么也不做。 – Kobi 2010-03-23 05:55:29