我正在努力学习jQuery。在员工网站上工作,该网站将允许每个员工通过唯一的键盘代码输入。无论如何,我遇到了this script,让它像我所期望的那样运行起来真是一件很痛苦的事情。
这是我的表格:
<form name='keypad_test' class='form-inline' method='post' role="form" >
<div class='form-group'>
<label for='user_id'></label>
<div class='col-sm-10'>
<input type='password' id='user_id' name='user_id' class='keypad' disabled='disabled' />
</div>
</div>这就是我是如何被迫获取变量的。我想对数据使用序列化,但是我不能让它工作来挽救我的生命。
<script type="text/javascript">
$('form').submit(function(e) {
var user_id_var = $('input.keypad').val();
$.post("process.php", { user_id:user_id_var }, function(data) {
alert(data);
});process.php就是$user_id = $_POST["user_id"]; echo $user_id;
有没有可能有人告诉我,我需要做些什么来序列化数据,这样我才能知道它是干净的?到目前为止,我的解决方案是从this post here上的不同答案中提取位。
发布于 2015-03-14 11:38:19
我看到您同时使用了PHP和JavaScript (以及jQuery)。我认为你遇到的问题是,你想要在JavaScript中对一些文本应用PHP JavaScript。如下所示:
s:5:"Hello";问题是,jQuery使用术语“序列化”来描述将整个表单的内容压缩成URL编码文本,如下所示:
a=10&b=apple // field 'a' has a value of 10, field 'b' has a value of 'apple'它让我认为您指的是PHP序列化,它可以用来验证变量的内容是否如它所说的那样。
jQuery中没有这样的函数。然而,PHPJS已经创建了一组JavaScript函数,它们的行为类似于PHP的等价物。Here's one for serialize()
Here's a working JSFiddle based on your code。我删除了.post()功能,因为在JSFiddle上没有服务器端脚本可以响应。只需在框中输入一些文本,然后按enter键提交表单。警报将显示该字符串的PHP serialize()版本。
https://stackoverflow.com/questions/29045022
复制相似问题