1

下面的 javascript 和函数在 joomla 1.5 中完美无缺,但似乎在 2.5 中不起作用 - 任何假期.. 它是一个资格计算器

似乎验证在提交表单时不起作用 - 验证没有在 2.5、php 5.3 中执行

   <td><input name="calc" type="button"  class="red-btn" onClick="javascript:return(validate())" style="width:65" value="Calculate Eligibility" /> 
   <input type="reset" name="reset" value="Reset"  class="red-btn" /></td> 

我无法点击提交,即使我点击没有任何反应

下面是调用的脚本

 function validate()

 {
var income,Coapplnincome,vOtherLonAmt,deduct,IntRate,LoanTenure;
var totInterest,totemi,ElgibleLon;
if(!document.eligib_calc.income.value)
 {
        alert("Please enter Applicants gross monthy income");
    document.eligib_calc.income.focus();
     return false;           
}
   if(isNaN(document.eligib_calc.income.value))
{   alert("Please Enter Numeric value for Income");
    document.eligib_calc.income.focus();
     return false;           
}
if(!document.eligib_calc.Coapplnincome.value)
    document.eligib_calc.Coapplnincome.value=0;
else if(isNaN(document.eligib_calc.Coapplnincome.value))
{   alert("Please Enter Numeric value for Co applicant Income");
    document.eligib_calc.Coapplnincome.focus();
     return false;           
}
if(!document.eligib_calc.OtherLonAmt.value)
    document.eligib_calc.OtherLonAmt.value=0;
else if(isNaN(document.eligib_calc.OtherLonAmt.value))
{   alert("Please Enter Numeric value for other loans"); 
    document.eligib_calc.OtherLonAmt.focus();
    return false;           

}



if(!document.eligib_calc.deduct.value)

    document.eligib_calc.deduct.value=0;

else if(isNaN(document.eligib_calc.deduct.value))

{   alert("Please Enter Numeric value for Deductions");

    document.eligib_calc.deduct.focus();

    return false;           

}

if(!document.eligib_calc.IntRate.value)

{

    alert("Please enter Interest Rate(in %)");

    document.eligib_calc.IntRate.focus();

    return false;           

}

    if(isNaN(document.eligib_calc.IntRate.value))

{   alert("Please Enter Numeric value for Interest Rate(in %)");

    document.eligib_calc.IntRate.focus();

    return false;           

}



if(!document.eligib_calc.LoanTenure.value)

{

    alert("Please enter Loan Tenure");

    document.eligib_calc.LoanTenure.focus();

    return false;           

}

if(isNaN(document.eligib_calc.LoanTenure.value))

{   alert("Please Enter Numeric value for Loan Tenure");

    document.eligib_calc.LoanTenure.focus();

    return false;           

}





income=document.eligib_calc.income.value;

Coapplnincome=document.eligib_calc.Coapplnincome.value;

OtherLonAmt=document.eligib_calc.OtherLonAmt.value;

deduct=document.eligib_calc.deduct.value;

IntRate=document.eligib_calc.IntRate.value;

LoanTenure=document.eligib_calc.LoanTenure.value;



totInterest=(parseInt(income)+parseInt(Coapplnincome))-(parseInt(OtherLonAmt)+parseInt(deduct));

totemi=EMI(100000,document.eligib_calc.IntRate.value,document.eligib_calc.LoanTenure.value);

ElgibleLon=(totInterest*(0.4)/(totemi));

//document.eligib_calc.emi.value=Math.ceil(totemi)+" per Lakh";



ElgibleLon=ElgibleLon*100;

ElgibleLon=Math.round(ElgibleLon);

ElgibleLon=ElgibleLon/100;

document.eligib_calc.ElgibleLon.value=ElgibleLon+" Lakhs";      

       }

      function EMI(vAmt,IntRate,LoanTenure)

      {

var terms;

var numAmt,denAmt;

var emiv;

terms=12;



numAmt=vAmt*Math.pow((1+IntRate/(terms*100)),LoanTenure);



denAmt=100*terms*(Math.pow((1+IntRate/(terms*100)),LoanTenure)-1)/IntRate;



emiv=12*(numAmt/(denAmt*12));



emiv=Math.round(emiv);



return emiv;


      }
      </script> 
4

1 回答 1

0

脚本将起作用。但是对于警报,您有两种方法

1) http://docs.joomla.org/JDocument
http://docs.joomla.org/JDocument/addScriptDeclaration

2) 使用 jquery 在标签中显示您的警报
hopfuly 帮助

例子:

function getJavaScript($message) {
$javascript .= 'if(window.addEventListener){ // Mozilla, Netscape, Firefox' . "\n";
$javascript .= '    window.addEventListener("load", function(){ alert("' . $message . '");}, false);' . "\n";
$javascript .= '} else { // IE' . "\n";
$javascript .= '    window.attachEvent("onload", function(){ alert("' . $message . '");});' . "\n";
    $javascript .= '}';
    return $javascript;
}

$doc =& JFactory::getDocument();
$doc->addScriptDeclaration( getJavaScript( 'This will appear in an alert box after the page loads.' ) );
于 2013-05-11T23:35:39.010 回答