2009-04-17 7 views
0

Ich habe eine Seite „MyPage.aspx“, die „MyForm.aspx“ mit PrototypASP.Net Validierung nicht funktioniert als Seite über Ajax Aufruf

neue Ajax.Updater (‚display‘ nennt, ‚/myform.aspx 'etc ....

Wenn jedoch die Seite macht es gibt keine Validierungsskripts auf der Seite.

dh ich sehe nicht, Skripte wie unten, wenn ich die Seite über ajax nennen. Wenn einfach anrufen myForm.aspx Ich sehe die folgenden Skripte

<script type="text/javascript"> 
//<![CDATA[ 
var FlagForm1_RequiredFieldValidator1 = document.all ? document.all["FlagForm1_RequiredFieldValidator1"] : document.getElementById("FlagForm1_RequiredFieldValidator1"); 
FlagForm1_RequiredFieldValidator1.controltovalidate = "FlagForm1_TextBoxName"; 
FlagForm1_RequiredFieldValidator1.errormessage = "RequiredFieldValidator"; 
FlagForm1_RequiredFieldValidator1.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid"; 
FlagForm1_RequiredFieldValidator1.initialvalue = ""; 
var FlagForm1_RequiredFieldValidator2 = document.all ? document.all["FlagForm1_RequiredFieldValidator2"] : document.getElementById("FlagForm1_RequiredFieldValidator2"); 
FlagForm1_RequiredFieldValidator2.controltovalidate = "FlagForm1_TextBoxEmail"; 
FlagForm1_RequiredFieldValidator2.errormessage = "RequiredFieldValidator"; 
FlagForm1_RequiredFieldValidator2.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid"; 
FlagForm1_RequiredFieldValidator2.initialvalue = ""; 
var FlagForm1_RequiredFieldValidator3 = document.all ? document.all["FlagForm1_RequiredFieldValidator3"] : document.getElementById("FlagForm1_RequiredFieldValidator3"); 
FlagForm1_RequiredFieldValidator3.controltovalidate = "FlagForm1_TextBoxComment"; 
FlagForm1_RequiredFieldValidator3.errormessage = "RequiredFieldValidator"; 
FlagForm1_RequiredFieldValidator3.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid"; 
FlagForm1_RequiredFieldValidator3.initialvalue = ""; 
//]]> 
</script> 

Antwort

0

müssen Sie evalscripts: true setzen. Wie der Name der Eigenschaft vermuten lässt, können damit die Skripte ausgewertet werden. Außerdem müssen Sie die Skripts in die übergeordnete Seite einfügen.

var myAjax = new Ajax.Updater(
        'container', 
        url, 
        { 
        asynchronous:true, 
        method: 'get', 
        parameters: pars, 
        evalScripts: true, 
        onFailure: reportError 
        } 
       ); 
Verwandte Themen