Hallo,
ich stehe gerade vor einem konzeptionellen Problem.
Wenn ich auf ein Event eines HTML-Elements reagiere, verlasse ich in dem Handler den this-Context.
Damit besser klar ist, was ich meine, vorerst ein Teil meines Codes:
Wie zu erkennen ist, muss ich bei "_onKeyPress" auf die Instanz "answers" zurückgreifen. Mir wäre es lieber an dieser Stelle auch einen "generischen" Bezugspunkt zu nutzen. this bezieht sich ja leider nicht mehr auf diesen Context. Wenn ich nun mehrere Instanzen habe, kann ich es so gar nicht mehr nutzen.
Hat jemand eine Idee?
Vielen Dank und Grüße
ich stehe gerade vor einem konzeptionellen Problem.
Wenn ich auf ein Event eines HTML-Elements reagiere, verlasse ich in dem Handler den this-Context.
Damit besser klar ist, was ich meine, vorerst ein Teil meines Codes:
Code:
Controller_answers = function()
{
this.options =
{
targetId : 'container_answers',
};
this._lastId = 0;
this._getNew = function()
{
this._lastId++;
return '<div class="container_answer" id="container_answer_' + this._lastId +
'"><input type="text"/><input type="button" value="Löschen" /></div>';
};
this.create = function()
{
$('#' + this.options.targetId).append(this._getNew());
var id = '#container_answer_' + this._lastId;
$(id).keypress(this._onKeyPress);
};
this._onKeyPress = function(e)
{
if(e.which === 13 && $('#container_answer_' + answers._lastId).value)
{
answers.create();
$('#container_answer_' + answers._lastId).focus();
}
}
this.create();
}
var answers = new Controller_answers();
Wie zu erkennen ist, muss ich bei "_onKeyPress" auf die Instanz "answers" zurückgreifen. Mir wäre es lieber an dieser Stelle auch einen "generischen" Bezugspunkt zu nutzen. this bezieht sich ja leider nicht mehr auf diesen Context. Wenn ich nun mehrere Instanzen habe, kann ich es so gar nicht mehr nutzen.
Hat jemand eine Idee?
Vielen Dank und Grüße