Domino 9 und frühere Versionen > ND7: Entwicklung
Problem mit Ajax
CLI_Andreas_Schmidt:
Hi @all,
Vielleicht hat schon jemand damit Erfahrung.
Folgender Code:
Im der Rückgabe "myvar" wird zudem NEIN auch noch HTML Code geliefert. Kann man sich durch eine andere Abfrageweise (an statt myvar = xmlhttp.responseText;) sich direkt das NEIN holen ?
Gruss
var xmlhttp=false;
var myvar;
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
function validate()
{
returnvalue = true;
xmlhttp.open("Get", "http://Server//Anwendungen.nsf/validate?OpenAgent");
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
myvar = xmlhttp.responseText;
if(myvar=="<html><head></head><body text=\"#000000\">nein</body></html>")
{
alert(myvar);
returnvalue = false;
return returnvalue;
}
}
}
xmlhttp.send(null);
}
validate();
flaite:
hat ich diese Woche auch so ähnlich. Versuch mal als erstes print statements im Agenten "validate" der Anwendung Anwendungen.nsf das folgende statement:
--- Code: ---Print "Content-type:text/plain"
--- Ende Code ---
CLI_Andreas_Schmidt:
Läuft !!! : )
super. DANKE.
CLI_Andreas_Schmidt:
Da stellt sich noch eine Frage.
Ich habe jetzt über die URL --> xmlhttp.open("Get", "http://server/db.nsf/validate?OpenAgent"); den Agenten gestartet. Der liefert mir auch einiges zurück. Ich würde jetzt gerne das geöffnetet (im Web) Dokument an das Backend übergeben. Kann ich das ohne Save ?
Frage also: Wie kann ich dem Agenten Werte (Felder aus dem Webformular) mitgeben, um diese dann im Agenten weiterzuverarbeiten und eine Rückgabe zu berechnen.
Gibt es im geöffnetem Browserfenster an das document.context ranzukommen ?
flaite:
Wo willst du das denn reinspeichern.
In das gleiche selbe ??? Dokument, das du im Frontend geöffnet hast ???
Du kannst im Prinzip im Agenten ja allemöglichen Save Operationen durchführen, bloss bei geöffneten Dokumenten wäre ich vorsichtig. Dann kannst du es ja direkt auch über Javascript im Frontend machen. Ich glaub das geht nicht.
An die Docunid kommst du schon dran: Einfach ein z.B. per css-property verstecktes Feld @text(@UniversalId));
Aber wie gesagt: Du kannst nicht in das selbe Dokument von 2 Stellen gleichzeitig reinschreiben.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln