1

嘿,StackOverFlow!

解释代码 (HTML)

<input tabIndex="0" title="Please enter transaction amount." id="TR_Amount" style="width: 425px;" maxLength="10" value=""/>
<input name="TR_Amount" type="hidden" value=""/>

<BR />

<input tabIndex="0" title="" class="InfoColor" id="check_amt" style="width: 141px;" maxLength="30" readOnly="" value=""/>
<input name="check_amt" type="hidden" value=""/>

<BR />
<DIV>
<LABEL title="" class=DefaultBold>Reserve Amount: 
<LABEL tabIndex=-1 title="" class=AttentionColor>#SAvlAmt#</LABEL>
</LABEL>
</DIV> 

HTML 有两个文本框,一个是可编辑的,一个是只读的,还有两个隐藏的框,它们在没有没有 $ 符号的框的情况下获取值。

在第一个 (TR_Amount) 文本框中输入一个数字后,第二个文本框会在模糊/更改时自动复制该数量。

它还有一个标签,它的值会在页面加载时自动替换。(所以#SAvlAmt# 成为数据库为我们系统的该变量保存的数量)这个值有两个不同的值。一个带有 $ 符号的和一个没有 $ 符号的只是在提交页面时运行。

JavaScript

function amtGreatRes(){
    var ChkAmount = $('input[name="check_amt"]').val(); // Works
    var ReserveAmt = $('#AvlAmt').val(); // My confusion
    if(ChkAmount > ReserveAmt){
        jAlert('The payment amount entered exceeds the reserve amount for this transaction. Please correct payment amount.');
    }else{jAlert('You did it!');}
}

问题

现在的问题/问题是:我将如何首先获取数据库填充值

然后,使用该金额,与从输入到 TR_Amount 输入框中的数据生成的只读字段中输入的金额进行比较?

JSFiddle 当前工作的 JSFiddle - 进行中

自动更新只读字段的代码已经到位。因此,主要的事情是弄清楚如何在没有 $ 符号的情况下获取该数据库值,以便当用户点击开箱即用的付款时,他们会看到一个警告框,告诉他们输入的方式超出了分配的范围本次交易

4

1 回答 1

1

要从标签中获取值,试试这个 -

<LABEL tabIndex=-1 title="" class=AttentionColor id="myLbl">#SAvlAmt#</LABEL>

var ReserveAmt = parseFloat($('#myLbl').text().replace('$', ''));

//更新比较不起作用的原因是因为您需要将值转换为浮点数 - 像这样 -

var ChkAmount = parseFloat($('input[name="check_amt"]').val());
var ReserveAmt = parseFloat($('#lblAmt').text().replace('$', ''));

jsFiddle

于 2013-07-23T13:52:21.503 回答