2012-05-08 11 views
0

グリッド内で、2つのテキストボックス値の複数、キープレスまたはキーアップイベントを計算したいと思います。 私はこれのためにいくつかのjavascriptを提供することができます。私はそれがまず javascriptのグリッド内の計算

var a = document.getElementById(txtlabchrgsNooflab); 
    var b = document.getElementById(txtlabchrgsTotalCost); 
    txtlabchrgsTotalCost=a*b;
+0

'txtlabchrgsTotalCost = parseDouble(a.value())* parseDouble(b.value());'? – mshsayem

+0

こんにちは@mshsayem ...私はこのエラーが発生していますMicrosoft JScriptランタイムエラー: 'txtlabchrgsNooflab'は定義されていません – chitra

+1

txtlabchrgsNooflabとtxtlabchrgsTotalCostとは何ですか?これらの変数は他の場所で定義されていますか?または、ページ上の要素のIDですか?それらがidsである場合は、それらを引用符で囲む必要があります。つまり、 'getElementById(" txtlabchrgsNooflab ")'です。 – Carl

答えて

2

を私のために動作しません。次のコードを使用する - あなたが一緒に二つのことを乗算したい場合、彼らは数字でなければならないとしています。あなたのab変数は単にあなたが認識しているHTML要素であり、そしてあなたが一緒にそれらを掛けることはできません現時点では

。 (Carlのコメントには注意が必要ですが、変数名ではなくリテラル文字列の場合はtxtlabchrgsNooflabを引用する必要があります)

数値データ型としてこれらの要素の値を取得する必要があります。値を取得するのは、テキスト入力の場合は.value()と同じくらい簡単です。ただし、これは文字列を返します。このは、必要に応じて自動的に数値型に強制的に変換されますが、確定的にparseFloatを呼び出すことはより幸いです。

2つの浮動小数点数を取得したら、それらをメリハリに乗算できます。

var elemA = document.getElementById(txtlabchrgsNooflab); 
var elemB = document.getElementById(txtlabchrgsTotalCost); 
var a = parseFloat(elemA.value()); 
var b = parseFloat(elemB.value()); 

txtlabchrgsTotalCost = a * b; 

OK、そうではこの上記のコードの結果を使用して:私たちは、このエラーメッセージから推測することができますどのような

error: Unable to get value of the property 'value': object is null or undefined

だからあなたのコードは、次のようになるはずですか?さて、呼び出されていたものがnullまたは未定義であったため、ランタイムはvalueを計算できませんでした。

コードを見ると、どの変数がnullでも未定義でもかまわないことがわかります。また、HTMLを調べてこれがなぜであるかを確認し、必要な修正を加えることができるはずです。

+0

var elemA = document.getElementById( "txtlabchrgsNooflab"); var elemB = document。getElementById( "txtlabchrgsTotalCost"); var a = parseFloat(elemA.value()); var b = parseFloat(elemB.value()); txtlabchrgsTotalCost = a * b;私は使用しましたが、そのエラーMicrosoft JScriptランタイムエラー:プロパティ '値'の値を取得できません:オブジェクトはnullまたは未定義です – chitra

+0

@userあなたのコメントに基づいて私の答えを更新しました。コードスニペットには、投稿した内容の範囲を超えた非常に単純な問題があるようです。 –

+0

しかし、グリッドのフッタテンプレートのこれらのtxtbox r ...それでは、ああを識別しませんか? – chitra

関連する問題