我试图在单击表单中的按钮时调用jquery函数,这是我正在使用的代码
按钮代码:
<input type="submit" src="images/submitbutton.png" alt="Submit button" name="submit_button" class="submit_button" id="submit_button">
表单起始代码
<form method="post" action="" id="contactForm">
jquery代码
<script type="text/javascript">
$(document).ready(function() {
//if submit button is clicked
$('input[name=submit_button]').submit(function () {
alert("testing")
.....
我尝试了一切来获取提交按钮来调用jquery函数但无效(我尝试使用submit()或click())。
我可能做错了什么(此表单位于html页面上)
编辑:刚刚插入我试图运行的Jquery函数的代码,我实际上是尝试使用ajax调用php脚本然后隐藏表单并在表单成功提交时提供成功消息
$(document).ready(function() {
//if submit button is clicked
$('#submit_button').submit(function () {
alert("testing") /*get the email value*/
var name = $('input[name=name]');
var email = $('input[name=email]');
var subject= $('input[name=subject]');
var message = $('textarea[name=message]');
data = 'name=' + name.val() + '&email=' + email.val() + '&subject=' +
subject.val() + '&message=' + encodeURIComponent(message.val());
//disabled all the text fields
$('.text').attr('disabled','true');
//start the ajax
$.ajax({
//this is the php file that processes the data and send mail
url: "mai.php",
//GET method is used
type: "POST",
//pass the data
data: data,
//success
success: function () {
$('.contact_form').fadeOut('slow');
//show the success message
$('.simple-sucess').fadeIn('slow');
//if process.php returned 0/false (send mail failed)
}
});
//cancel the submit button default behaviours
return false;
});
});
</script>
答案 0 :(得分:2)
嗯,名字应该在引号中:
$('input[name="submit_button"]')
http://api.jquery.com/attribute-equals-selector/
value [..]属性值。报价是强制性的。
尽管如此,你可能应该使用身份证。
另外,我认为你不打算在按钮上使用.submit
。请尝试在表单上使用.click
或.submit
。
答案 1 :(得分:0)
您是否尝试过此代码:
<script type="text/javascript">
$(document).ready(function() {
//if submit button is clicked
$('#submit_button').submit(function () {
alert("testing");
});
});
</script>
答案 2 :(得分:0)
为什么不尝试使用类型按钮而不是提交?如果要在单击按钮后刷新页面,可以在脚本末尾添加返回true。 =)