Javascript “传递上下文”;这";从一个函数到它内部的另一个函数?

Javascript “传递上下文”;这";从一个函数到它内部的另一个函数?,javascript,jquery,html,Javascript,Jquery,Html,我正在用表单练习ajax,并且。。我想,为了学习,我会越来越迷惑自己 这可能没有任何意义,但我正在尝试记录名字和姓氏,特别是通过conLog函数。但它显示为未定义,因为我认为上下文“this”不存在,我不确定如何设置它。不过,我还是设法在ajax中设置了它 因此,如果打开日志,第二行表示未定义,而在第一行中,第一个表单的输入被记录 假设这就是问题所在,如何将“this”传递到conLog 提前谢谢!我发现有几个帖子也有同样的问题,但感叹。。。我想我无法理解它,除非它适用于我的个人问题(我想我还

我正在用表单练习ajax,并且。。我想,为了学习,我会越来越迷惑自己

这可能没有任何意义,但我正在尝试记录名字和姓氏,特别是通过conLog函数。但它显示为未定义,因为我认为上下文“this”不存在,我不确定如何设置它。不过,我还是设法在ajax中设置了它

因此,如果打开日志,第二行表示未定义,而在第一行中,第一个表单的输入被记录

假设这就是问题所在,如何将“this”传递到conLog

提前谢谢!我发现有几个帖子也有同样的问题,但感叹。。。我想我无法理解它,除非它适用于我的个人问题(我想我还需要学习阅读其他人的代码)

HTML


我想这就是你要找的。 我修改了您的,将名称输出到
元素。 我刚刚修改了
consLog
道具的分配方式:

  this.conLog = function(first, last) {
    this.first = first;
    this.last = last;
    console.log(this.first + " " + this.last);
    document.getElementById("name").innerHTML = this.first + " " + this.last;
  };

我想这就是你要找的。 我修改了您的,将名称输出到
元素。 我刚刚修改了
consLog
道具的分配方式:

  this.conLog = function(first, last) {
    this.first = first;
    this.last = last;
    console.log(this.first + " " + this.last);
    document.getElementById("name").innerHTML = this.first + " " + this.last;
  };

你不需要通过
这个
。因为您已经在传递
first
last
参数。直接像这样使用:

this.conLog = function(first, last) {
  console.log(first + " " + last);
};

注:我将
this.first
this.last
更改为
first
last

您不需要通过
。因为您已经在传递
first
last
参数。直接像这样使用:

this.conLog = function(first, last) {
  console.log(first + " " + last);
};

注:我将
this.first
this.last
更改为
first
last
,因此有很多方法可以实现这一点。。。最简单的方法之一是设置
var self=this在您拥有
this.el=el的位置上方或周围Function.bind Function.call和Function.apply,它们都与你的问题有关。。。始终是一个很好的起点。

因此有很多方法可以实现这一点。。。最简单的方法之一是设置
var self=this在您拥有
this.el=el的位置上方或周围Function.bind Function.call和Function.apply,它们都与你的问题有关。。。总是一个很好的起点