社区首页 >问答首页 >jquery - $(this)....$.post内幕

jquery - $(this)....$.post内幕
EN

Stack Overflow用户
提问于 2013-04-29 22:36:55
回答 2查看 425关注 0票数 1

这是我的代码

代码语言:javascript
代码运行次数:0
复制
$("#idselectB").click(function() {
    var id = $("#idselectB option:selected").text();
    $.post('elegir.php', {'id': id}, function (data) {
         $(this).closest(':input').val(data);
    });
});

当我在下拉列表中单击时,会得到选中的值。然后我将值发送给elegir.php,它会返回一个字符串。最后,我想将这个字符串插入到最接近的输入中。

如果我执行alert($(this).closest(':input').val(data));,这将返回我:[object Object]

?如何将返回值插入到我想要插入的位置?

我有很多输入文本,所以我需要closest()

EN

回答 2

Stack Overflow用户

发布于 2013-04-29 22:39:37

您需要将对单击的元素的引用存储在某个位置:

代码语言:javascript
代码运行次数:0
复制
$("#idselectB").click(function() {
    var id = $("#idselectB option:selected").text(),
        that = this; // this is a reference to a clicked object

    $.post('elegir.php', {'id': id}, function (data) {
         $(that).closest(':input').val(data);
    });
});
票数 3
EN

Stack Overflow用户

发布于 2013-04-29 22:42:29

有两种常用的方法。

您可以将引用从this复制到局部变量中,该变量将被捕获在回调函数的闭包中,以便您也可以在那里使用它:

代码语言:javascript
代码运行次数:0
复制
$("#idselectB").click(function() {
  var id = $("#idselectB option:selected").text();
  var t = this;
  $.post('elegir.php', {'id': id}, function (data) {
     $(t).closest(':input').val(data);
  });
});

您可以使用proxy method设置回调函数的上下文

代码语言:javascript
代码运行次数:0
复制
$("#idselectB").click(function() {
  var id = $("#idselectB option:selected").text();
  $.post('elegir.php', {'id': id}, $.proxy(function (data) {
     $(this).closest(':input').val(data);
  }, this));
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16289385

复制
相关文章
jquery $.postjQuery.post()
Description: Load data from the server using a HTTP POST request.
全栈程序员站长
2022/07/08
8450
jQuery中使用ajax,$.post
 jQuery.post( url, [data], [callback], [type] ) :使用POST方式来进行异步请求 参数: url (String) : 发送请求的URL地址. data (Map) : (可选) 要发送给服务器的数据,以 Key/value 的键值对形式表示。 callback (Function) : (可选) 载入成功时回调函数(只有当Response的返回状态是success才是调用该方法)。 type (String) : (可选)官方的说明是:Type o
Ryan-Miao
2018/03/13
1.2K0
jQuery - AJAX get() 和 post() 方法
jQuery get() 和 post() 方法用于通过 HTTP GET 或 POST 请求从服务器请求数据。
陈不成i
2021/07/22
1.5K0
flask+jquery发送post请求
本次来学习一下如何使用flask发送post请求,我们以上一篇中的 用flask搭建一个测试数据生成器(v1.1) 获取电话号码为例子,把它改造为post请求
冰霜
2022/03/15
1.4K0
flask+jquery发送post请求
JQuery 封装 Ajax Post 请求示例
发送 POST 其实很简单可以在之前发送 GET 请求的基础上进行更改一些内容即可进行发送 POST 请求了:
程序员 NEO
2023/09/22
2700
JQuery 封装 Ajax Post 请求示例
jquery中的ajax写法_jquery中get和post提交的区别
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/10
1.3K0
jQuery调用RESTful WCF示例(GET方法/POST方法)
不废话了,直奔主题吧 wcf端: 近几年比较流行restful,为了能让ajax调用,同时也为了支持restful风格的uri,在创建一个Ajax-enabled Wcf Service后,必须手动修改svc文件,指定Factory,即: <%@ ServiceHost Language="C#" Debug="true" Service="ajaxSample.HelloWorld" CodeBehind="HelloWorld.svc.cs" Factory="System.ServiceModel.
菩提树下的杨过
2018/01/23
1.8K0
[Play-Scala-2.2.1] 接收jQuery Post的原始字符串请求
 1. 客户端jQuery代码     页面上负责发送Post请求的jQuery代码如下: $.ajax({ type: "POST", url: "/receive", data: $("#data").val(), contentType: "text/plain", processData: false, success: function(res){ $("#mess").text(res); } });  这里需要注意的是第5行,将contentT
joymufeng
2018/05/17
1.3K0
开心档之jQuery - AJAX get() 和 post() 方法
jQuery get() 和 post() 方法用于通过 HTTP GET 或 POST 请求从服务器请求数据。
iOS程序应用
2023/03/06
8200
《JQuery技术内幕》读书笔记——自调用匿名函数剖析
Javascript语言中的自调用匿名函数格式如下: (function(){ //do somethings })(); 它还有另外两种等价写法如下: //等价写法一 (function(){ //do somthings }()); //等价写法二 !function(){ //do somethings }(); JQuery采用的是第一种写法 (function(window,undefined){ //... })(window); 自调用匿名函数创建了一个独立的作用域,从而与全局以及其他
寒月十八
2018/01/30
7240
详细解读Jquery各Ajax函数:$.get(),$.post(),$.ajax(),$.getJSON()
一,$.get(url,[data],[callback]) 说明:url为请求地址,data为请求数据的列表(是可选的,也可以将要传的参数写在url里面),callback为请求成功后的回调函数,该函数接受两个参数,第一个为服务器返回的数据,第二个参数为服务器的状态,是可选参数。而其中,服务器返回数据的格式其实是字符串形势,并不是我们想要的json数据格式,在此引用只是为了对比说明。 1 $.get("data.php",$("#firstName.val()"),function(data){ 2 3
用户1214487
2018/01/24
3.9K0
JQuery Ajax Post导致500内部服务器错误
$.ajaxSetup({data:{csrfmiddlewaretoken:'{{csrf_token}}'}});
用户4645133
2019/02/15
4.5K0
JQuery异步post上传表单数据【标准化模板】
Crayon鑫
2023/10/10
2330
Fastjson内幕
原文出处:http://wenshao.iteye.com/blog/1142031
干货满满张哈希
2021/04/12
9010
Fastjson内幕
企业面试题: jquery中$.get()提交和$.post()提交有区别吗?
1、请求方式不同:$.get() 方法使用GET方法来进行异步请求的。$.post() 方法使用POST方法来进行异步请求的。
舒克
2019/08/09
9900
python测试开发django-131.jQuery中$.ajax()方法POST提交"application/json"
$.ajax()方法提交POST请求时,contentType发送数据到服务器时所使用的内容类型。默认是:”application/x-www-form-urlencoded”。 如果想以json格式提交,可以设置参数contentType:”application/json”
上海-悠悠
2021/10/08
7640
$_POST
上半年为了应付面试,背了很多基础知识,其中有个经常会被问到的,就是php中的超全局变量。一直以来也只是把这几个超全局变量给记下来了,但是往深点就没了。仔细一想,好像对它一无所知。
仇诺伊
2020/04/24
4K0
$_POST
深入JVM内幕
众所周知,Java字节码运行在JRE(Java Runtime Environment)中,JVM又是JRE中最重要的部分,主要用于分析和执行字节码。虽然不深入了解JVM,开发人员也已经开发出许多优秀的应用和Library,但如果了解JVM,你可以更好的理解Java语言,同时也可以解决一些看上去很简单却不好解决的问题。
码代码的陈同学
2018/06/24
1.3K3
深入JVM内幕
Rabbitmq技术内幕
Rabbitmq大体上可以分为两部分(Exchange和MQ),所有发送给RabbitMQ的消息都会先交给Exchange, Exchange的功能类似于路由器,它会根据自身类型(fanout、direct、topic)以及binding信息决定一个消息该被放到哪一个MQ, 而MQ的功能在于暂时存储消息,并将MQ中的消息以订阅或者poll的方式交给接收方。
tunsuy
2022/10/27
3930
多线程内幕
本文是HinusWeekly第三期的第二篇文章,第三期的主题就是多线程编程。本文试图从单核CPU的角度讨论并发编程的困难。 函数调用的过程,就是不断地创建栈帧,销毁栈帧。实际上,多线程程序的执行只是这个模型的一种推广,也就是每一个线程都拥有自己独立的栈空间。 我们看一下这个程序: public class TestOne { public static void main(String[] args) throws Exception { Thread t1 = new Thread
海纳
2018/03/02
6570
多线程内幕

相似问题

Gridster内幕

14

Jquery Mobile面板滚动内幕问题

22

jquery没有发现webpack生活中的内幕

129

touchesBegan: UITableView内幕

12

XSD选择内幕

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档