Javascript 如何在jquery中传递函数变量?

Javascript 如何在jquery中传递函数变量?,javascript,jquery,variables,Javascript,Jquery,Variables,这是我正在使用的html表单 <label>Your Username:</label><input id="username" name="username" type="text" onchange="return ajax ('username');" /> 在我的表单上,我使用变量username调用ajax请求 在my ajax.php中,如果请求名为username,则会对用户名进行正确验证 我想在jquery代码中显示变量输入而不是用户名,这样

这是我正在使用的html表单

<label>Your Username:</label><input id="username" name="username" type="text" onchange="return ajax ('username');" />
在我的表单上,我使用变量username调用ajax请求

在my ajax.php中,如果请求名为username,则会对用户名进行正确验证

我想在jquery代码中显示变量输入而不是用户名,这样我就可以使用这个脚本进行其他验证,并将变量作为电子邮件或密码传递,并且脚本仍将运行,因为输入值将是它需要的值

如果这有道理的话

谢谢你抽出时间

var data = {};
data[input] = $('#' + input).val();

$.post("ajax.php", data, function() {...


您将
val
声明为“input”的值,但从未使用它。username的所有用法都应该可以访问该变量
val
,所以请使用它。除非我误解了你的问题,像这样的事情(只改变了一行):


检查输入arg wat ll u get然后继续。。。。。 删除旁边的分号

 {username: $('#' + input).val(),}

as ,{ username: $('#' + input).val()},

在调用$之前,您将获得o/p

。post创建一个空对象

var data = {};
使用函数的参数作为对象的索引

data[input] = val;
在$.post调用中,使用该对象而不是匿名对象文本

$.post("ajax.php", data, function ...);

但是,如果按照描述的方式进行操作,则需要确保正确管理传入的所有这些参数。您确定您的PHP脚本能够处理所有可能传递到ajax函数中的不同值吗?

这似乎不起作用,我完全按照您键入的方式执行,ajax调用失败。这将把
input
的值作为参数名发送。不确定这是否是你真正想做的。如果你不提供更多信息,我无法帮助你。我发布的是您必须对所呈现的代码进行的更改。可能你还需要调整其他没有发布的内容。变量input是输入字段的css id,这样返回调用就知道在哪里使用显示ajax调用。在(响应)之后,变量val是用户输入的,如果这很重要的话?我很清楚。。。您的目标是让ajax函数接受字符串作为参数,获取将该字符串作为其id属性的元素的值,然后使用该字符串作为该参数的标签将该值发送到ajax.php。这是正确的吗?换句话说,如果你写:ajax(“name”);然后,您希望函数找到id为“name”的元素,获取其值,并将其作为“name:value”发送到ajax.php的ajax帖子中,这是否正确?
 {username: $('#' + input).val(),}

as ,{ username: $('#' + input).val()},
var data = {};
data[input] = val;
$.post("ajax.php", data, function ...);