2016-03-29 7 views
0

Ich habe eine Funktion, die Werte aus 2 anderen Feldern berechnet und addiert und die Ergebnisse in einem dritten Feld anzeigt. Das funktioniert perfekt. Jetzt muss diese Berechnungsfunktion jedoch "warten", bis ein Wert in einem separaten Datumsfeld angezeigt wird. Sobald dieses Datumsfeld einen Wert hat, kann die Berechnungsfunktion die Ergebnisse anzeigen. Siehe aktuelle Berechnungsfunktion unten.Wie setze ich eine JavaScript-Funktion, um zu warten, bis sie einen Wert in einem anderen Feld sieht

Vielen Dank für Ihre Hilfe.

function Calculate() { 
    var item1 = Xrm.Page.getAttribute("new_step1amount").getValue(); 
    if (item1 == null) { 
    item1 = 0; 
    } 

    var item2 = Xrm.Page.getAttribute("new_step2amount").getValue(); 
    if (item2 == null) { 
    item2 = 0; 
    } 

    Xrm.Page.getAttribute("new_totalamountcollected").setValue(item1 + item2); 
} 

Antwort

0

Hier ist Pseudo-Code:

if(dateFieldHasValue) 
{ 
    Xrm.Page.getAttribute("new_totalamountcollected").setValue(item1 + item2); 
} 

Sie Ihre Funktionsfeld onchange des Datums nennen ...

+0

Vielen Dank für Ihre schnelle Antwort. Ich habe die if-Anweisung hinzugefügt, die Sie vorgeschlagen haben. Siehe Code unten. Aber jetzt bekomme ich "calculate is undefined" Nachricht. – BMergen

+0

Entschuldigung hier gehen Sie Funktion berechnen() { var item1 = Xrm.Page.getAttribute ("new_step1amount"). GetValue(); if (item1 == null) { item1 = 0; } var item2 = Xrm.Page.getAttribute ("new_step2amount"). GetValue(); if (item2 == null) { item2 = 0; } if (new_steponecontractrecieved.value == '') { Xrm.Page.getAttribute ("new_totalamountcollected") setValue (item1 + Element2.); } – BMergen

+0

@BMergen Ich sehe nicht die Funktion schließendes Tag '(item1 + item2); } **} ** 'Ich denke auch, du würdest' if (new_steponecontractreciew.value! = '') 'anstelle von' if (new_steponecontractrecieview.value == '') '... – brso05