2013-03-02 99 views
1

我对编程比较陌生,但了解HTML,CSS和Javascript(包括jQuery)的基础知识。由于我的绿色环保,如果答案包含一个简单的解决方案和为什么该解决方案有效的原因,我会很感激。谢谢!如何访问Javascript中用户提交的表单数据?

所以我有一个形式,一个文本输入和一个提交按钮:

<form> 
<input type="text"> 
<button type="submit">Submit</button> 
</form> 

当用户输入数据到文本字段,并点击提交,我怎么获取这个数据?如果用户输入他们的名字,我该如何获取这些信息?我不打算将它存储或写入任何地方,只是为了将它保存为JavaScript中的变量,我将其分配给jQuery cookie。

那么,如何访问用户提交的数据,最好只使用JavaScript(使用jQuery)?谢谢您的帮助!

回答

0

说你有一个HTML的输入标签,如:使用JavaScript

<input id="textfield" type="text"> 

,你可以在字段的值存储在像变量这个:

var inputvalue = $('#textfield').val(); 

当然,你需要一些东西来运行脚本。

这个工作的原因是textfield是一个对象。你可能会认为它是一种树干,有不同的枝条出来。这些“分支”之一就是其中包含的值。既然你知道jquery,你知道$('#textfield')通过选择器获取元素。这段时间表示我们正在获得其中一个分支,“价值”表示我们希望分支能够告诉文本字段中的内容。

希望这有助于。

+0

'$(“#textfield”).value'将不起作用 – 2013-03-02 00:18:12

+0

我用div替换了表单中的按钮,因为它是一种按钮排序的混乱情况。该div有一个'upl();'的onclick。在我的Javascript中,函数'upl()'看起来像这样: 'function upl(){ var inputvalue = $(“#textfield”).value; 控制台。log(inputvalue);' 我忘了提及,在我的HTML中,我在文本输入中添加了“textfield”的ID。当我现在点击按钮时,它所有的日志都是“未定义的”。我做错了什么? – 2013-03-02 00:25:00

+0

oops。应该是var inputvalue = $('#textfield')。val()在jquery中。编辑。 – 2013-03-02 00:53:18

3

您访问服务器端的数据(例如通过$_POST['username']在PHP中)。该形式将数据发送到您的服务器的任何命名输入,所以你可能将不得不改变输入到:

<input type=text name=username> 

如果您要访问它的客户端(使用JavaScript),你也可以这样做,但你必须防止形式从提交:

$("form").on('submit', function (e) { 
    $.cookie('username', $(this).find('[name=username]').val()); 
    //stop form from submitting 
    e.preventDefault(); 
}); 
+0

我绝对在访问客户端,因为我对PHP一无所知。我知道这意味着我不能以任何其他方式存储数据,而不是使用cookie,这就不用担心了。 要获取用户名值到一个变量而不是一个cookie,它会只是 'var un = $('username')。find('[name = username]')。val();'存储变量'un'中的用户名? – 2013-03-02 00:10:30

+0

@IanZane关闭。 ''用户名'试图选择一个像''这样的实际元素。我使用了'this'(你也应该),这是提交的表单元素。 – 2013-03-02 00:11:26

+0

非常感谢!我一定会牢记这一点! – 2013-03-02 00:17:04