2011-03-27 92 views
0

我有一个表单,它有2个输入和1个texatarea,当用户提交表单时,表单的默认行为被停止,以便为ajax请求提供方式。这里是我使用的代码。jquery从输入字段获取空白值

$(document).ready(function(){ 
    $('input#submit').click(function(){ 
     $name = $('input#name').val(); 
     alert($name); 
    return false; 
    }); 
}); 

,这里是我的HTML表单

<form action="" method="post" id="mail-form"> 
    <label for="name">Name *</label><br/> 
    <input type="text" name="name" id="name"/><br/> 
    <label for="email">Email *</label><br/> 
    <input type="text" name="email" id="email"/><br/> 
    <label for="message">Message *</label><br/> 
    <textarea id="message"></textarea> 
    <input type="submit" name="submit" value="Send" id="submit"/> 
</form> 

当我点击提交它只是显示在警告框,即使我在输入名称字段值的一些空白值按钮。而如果我使用下面的代码形式。

<input type="text" name="name" id="name" value="yourname"/> 

它正确显示您的名字在警告框中。我的代码有什么问题?

UPDATE:

这里是我的整个index.html(http://jsfiddle.net/MknfR/)file,是有什么错DOM?

+0

您的意思是有$ name吗?我知道当我在使用php和Javascript的同时,它有时会潜入那里,但很难判断当你使用JQuery时它是否是一个小故障。 – 2011-03-27 20:16:19

+1

你的代码似乎工作得很好:http://jsfiddle.net/nogoodatcoding/p4rTG/ – 2011-03-27 20:17:55

+0

请看看我的文章,我已更新我的文章链接到index.html文件,我怀疑它是否有东西用DOM做什么? – 2011-03-27 20:36:01

回答

0

非常怪异。它效果很好。在这里测试:http://jsfiddle.net/PLm5a/

请自行测试该链接,确保它不是来自您的开发环境。

Regards

+0

我已经更新了我的帖子,链接到了我的index.html。它根本不适用于我。可能是dom出了问题。incase你想查看我的索引.html文件是链接http://jsfiddle.net/MknfR/ – 2011-03-27 20:29:20

+0

我试过你的代码,我删除了包含的js/css文件(main和bxslider插件,因为它们不可访问)。 ://jsfiddle.net/PLm5a/1/ – Zakaria 2011-03-27 20:41:02

+0

大声笑,这很有趣,是的,它在jsfiddle中没有任何问题,我测试它。但我可以保证它不能在我的浏览器上工作,在Chrome浏览器,firexox和safari上测试过OSX 10.6.6 – 2011-03-27 20:44:55

0

尝试添加一个空值属性的HTML源代码:

<input type="text" name="name" id="name" value=""/> 
+0

nope that does not work :( – 2011-03-27 20:18:24