Ich verwende Ajax mit ModelGlue in einer ColdFusion-Anwendung. Ich möchte einen Ajax-Aufruf ausführen, um einen Wert zurückzugeben. Ich will keinen Blick rendern. Ich möchte nur eine Datenbankinteraktion und einen Wert zurückbringen.Ajax-Aufruf in ModelGlue ColdFusion Anwendung ohne Rendering einer Ansicht
Mein Ajax-Aufruf:
new Ajax.Request(root+'test.testFunction',{
method: 'post',
parameters: {param1:paramval},
onSuccess: function(response){
alert(response.responseText);
var myresult = response.responseText;
}
});
meine modelglue Veranstaltung:
<event-handler name="test.testFunction">
<broadcasts>
<message name="testFunction" />
</broadcasts>
</event-handler>
und meine Controller-Funktion:
<cffunction name="testFunction" returnType="any" output="true" >
<cfargument name="event" type="any" required="true">
<cfset justtest = 1>
<cfreturn justtest>
</cffunction>
I Prototyp als meine Ajax-Bibliothek verwenden.
Wenn ich den responseText alarmiere, bekomme ich null Wert. Ist das bcoz Ich habe nicht den View-Teil in der Event-Handler enthalten? Wenn ich den View-Teil mit einschließe, müsste ich eine neue Seite erstellen, die ich nicht machen möchte. Ist es möglich, nur einen Serverwert durch einen AJAX-Aufruf zu erhalten, ohne eine Sicht zu rendern? Ich möchte MyResult Wert wie 1 nach dem obigen Szenario haben.
Pls Hilfe. Thnx für jede Hilfe.
@Masterbuddha ... thnx ..es hat funktioniert ... du bist ein verdammt guter Programmierer..Wenn ich das richtig verstehe, gibt die Funktion nichts zurück, aber stattdessen gibt der Server die Daten in Form von cfcontent zurück. Der cfcontect dient in diesem Fall tatsächlich als Sichtweise. Hab ich recht? sowieso thnx viel mann ..... – ajithmanmu
Etwas über diese Lösung reibt mich wirklich in die falsche Richtung. Wenn Sie den Model-Glue-Ereignis-Lebenszyklus unterbrechen möchten, warum sollten Sie zuerst ein Model-Glue-Ereignis verwenden? In diesem Fall würde ich tun, wie Henry vorgeschlagen hat und nur einen Remote-Proxy verwenden. –