好吧,考慮到正則表達式工作不正常,沒有錯誤,我會嘗試使用錢面具。使用maskMoney輸入插件 - 仍然需要一些幫助
目標仍然只允許數字字符和小數。用maskMoney,那爲你做了工作。
此外,我需要能夠成功地計算每個單元格。
截至目前,口罩工作良好,但我無法再計算。這是我困擾的地方。
jQuery和JavaScript代碼:
<script type="text/javascript" language="javascript">
$(document).ready(function(){
$('.date').mask("99/99/9999");
$('.account').mask("99-9-999999-9999");
/*calcuating the vertical and horizontal inputs*/
$('.R26').attr("disabled", "disabled");
$('.calc').maskMoney({symbol: ""});
$('.R25').unmaskMoney();
$('.R18').unmaskMoney();
$('input.description').focus(function(){
if($(this).val()=="Enter text here"){
$(this).val(" ");
}
else{
$(this).val($(this).val());
}
});
$('input.description').blur(function(){
if($(this).val()==" "){
$(this).val("Enter text here");
}
});
$('.calc').keyup(function(){
var classArray = $(this).attr('class').split(' ');
//Personal gas expense
$('.gasamount').sum("change", "#totals4");
var num = $(this).attr("id").replace(/[A-Za-z$,-]/g, "");
$('#gasmoney'+num).val(<cfoutput>#mileage#</cfoutput> * $(this).val());
$('.gasmoney').sum("change", "#totals5");
//////////////////////
//Sum of each cell
$.each(classArray, function(){
$('.'+this).sum("change", ".ttl"+this);
});
//Finding the grandtotal
var grandTotal = $('.row26').parent().children('td:last').children('input');
var sum = $('.row25').parent().children('td').children('.calc').sum();
grandTotal.val(Number(sum).toFixed(2));
});
ColdFusion和HTML代碼:
#labels [R]#
<cfloop from="1" to="7" index="i">
<td id="Day#i#" class="row#r# col#i#">
<cfif r EQ 1>#Left(DayOfWeekAsString(i),3)#<cfelse><cfif r EQ 2>
<input type="text" class="date-mask" /><cfelse>
<input type="text"
<cfif labels[r] EQ "Personal Car: Mileage ##"> id="gasamount#i#" <cfelseif labels[r] EQ "Personal Car: Mileage $">id="gasmoney#i#" </cfif><cfif labels[r] EQ "Daily Totals">id="dailytotals#i#"</cfif>
class="<cfif labels[r] EQ "Personal Car: Mileage ##">gasamount<cfelse><cfif labels[r] NEQ "Daily Totals">C#i#</cfif></cfif>
<cfif labels[r] EQ "Personal Car: Mileage $">gasmoney<cfelse>calc R#r#</cfif>
<cfif labels[r] EQ "Daily Totals">ttlC#i#</cfif>"
<cfif labels[r] EQ "Daily Totals" OR labels[r] EQ "Personal Car: Mileage $">readonly="readonly"</cfif>
/></cfif>
</cfif>
</td>
</cfloop>
<td class="totals"><cfif r EQ 1>Total<cfelse><input type="text" id="totals" class="ttlR#r#" readonly="readonly" /></cfif></td>
我對同一個應用程序有類似的問題,但事實上這不是重複的(如果你認爲是這樣)。
'。'+這是由數組創建的對象。我用cfloops來創建一個大表,並添加了多個類。必須將多個類拆分爲一個數組,然後才能夠選擇每個類作爲自己的類。
我更新了我的答案,以解決您在使用第一次嘗試時遇到的其他錯誤。 HTH,如果它不起作用/不清楚,請留下我對該答案的評論。 – Sean 2009-08-03 16:28:48