N
Netzwerkidi
Hallo,
ich lese mit jQuery den Inhalt eines Spreadsheets vom Googleserver ein. Das klappt auch.
Die Daten werden in eine existierende Tabellenstruktur eingelesen; Header und eine Zeile existieren, der neuen Rows werden dahinter gehängt. Klappt alles wunderbar.
Für die Rows sollen Events zünden. Die werden aber komischerweise nur für die existierenden Sätze ausgeführt und nicht für die neu eingelesenen.
Wenn man sich mit Firebug den Code anschaut, fehlen bei den neuen Sätzen die Styleinformationen. Beim ersten, korrekten Satz lautet der Code:
Gibt es da so eine Art Post oder Commit oder so was, dass die neuen Sätze erkannt werden von der Bind-Routine?
Die Reihenfolge ist: zuerst werden die Spreadsheetdaten an die Tabelle gehängt und dann findet das bind statt.
Merkwürdig ist auch, wenn man in einem markierten Satz doppelklickt, geht ein Dialog auf. Mit dem Anzeigen des Dialogs geht aber leider der Focus auf die Row verloren. Es wird nicht mehr der ganze Satz markiert sondern nur noch das Feld, in dem man zuletzt drin war.
Wie kann man den ganzen Satz weiterhin markiert lassen? Müsste man einen anderen Mouseevent nehmen?
Grüße
Idi
ich lese mit jQuery den Inhalt eines Spreadsheets vom Googleserver ein. Das klappt auch.
Die Daten werden in eine existierende Tabellenstruktur eingelesen; Header und eine Zeile existieren, der neuen Rows werden dahinter gehängt. Klappt alles wunderbar.
Für die Rows sollen Events zünden. Die werden aber komischerweise nur für die existierenden Sätze ausgeführt und nicht für die neu eingelesenen.
Wenn man sich mit Firebug den Code anschaut, fehlen bei den neuen Sätzen die Styleinformationen. Beim ersten, korrekten Satz lautet der Code:
Code:
background: none repeat scroll 0% 0% rgb(255, 255, 255); color: rgb(0, 0, 0); cursor: pointer;
Gibt es da so eine Art Post oder Commit oder so was, dass die neuen Sätze erkannt werden von der Bind-Routine?
Die Reihenfolge ist: zuerst werden die Spreadsheetdaten an die Tabelle gehängt und dann findet das bind statt.
Code:
$(function listActions() {
$.getJSON("https.....
});
$('#mydiv tr').bind({
mouseenter: function(){
if (!$(this).hasClass("header2")){
$(this).css({background: '#555', color: '#fff'});
$(this).css( 'cursor', 'pointer' );
}
},
mouseleave: function(){
$(this).css({background: '#fff', color: '#000'});
},
dblclick: function() {
var arr = [];
$('td', this).each(function() {
arr.push($(this).text());
})
if(confirm('Aktion "' + arr[0] + '" 5 Millionen in bar mitnehmen?')) {
$('#mydiv').slideToggle('1250');
...
...
}
}
});
Merkwürdig ist auch, wenn man in einem markierten Satz doppelklickt, geht ein Dialog auf. Mit dem Anzeigen des Dialogs geht aber leider der Focus auf die Row verloren. Es wird nicht mehr der ganze Satz markiert sondern nur noch das Feld, in dem man zuletzt drin war.
Wie kann man den ganzen Satz weiterhin markiert lassen? Müsste man einen anderen Mouseevent nehmen?
Grüße
Idi
Zuletzt bearbeitet von einem Moderator: