-1

ショッピング カートテーブル tdに配置されているデータベースから動的に生成されている文字列から 2 文字を減算しようとしています。したがって、製品を $28.00 と表示する代わりに、製品を $28 と表示したいと考えています。これらの値はデータベースから取得されるため、多くのチュートリアルで見たように、単純に変数で文字列を定義することはできません。

これが私のJSフィドル です http://jsfiddle.net/EbckS/6/

ここに私のエロいコードがあります

    $(document).ready(function(){

       $("table td.SCNProductPrice").text(function(i, text) {
       return text.slice(0, -2);
       });

    });

これは、私がここに投稿した別の質問へのフォローアップです: jQuery Removal last two characters in a class

テーブル td 内のクラスをターゲットにするには別の構文が必要になることに気づかなかったため、これを別の質問に入れています。ご協力いただきありがとうございます!

4

3 に答える 3

2

あなたのhtmlが有効である、つまりテーブルがあり、スライスのインデックスが間違っていると仮定します。最初の 1 つは、任意の数の小数点が表示された場合に処理します。

試す

$("table td.SCNProductPrice").text(function(i, text) {
    return '$' + parseInt(text.replace('$',''));
});

また

 $("table td.SCNProductPrice").text(function(i, text) {
       return text.slice(0, -3);
       });
于 2013-03-28T00:04:14.833 に答える
0

tda の中にある aを追加する必要trがありtableます。

<table>
    <tr>
        <td class="SCNProductPrice" valign="top">$28.00</td>
    </tr>
</table>

デモ

于 2013-03-28T00:01:52.153 に答える
0

マークアップ:

<table>
    <tr>
        <td class="SCNProductPrice" valign="top">$28.00</td>
    </tr>
</table>

JS:

$(document).ready(function(){
    $("td.SCNProductPrice").text(function(i,text) {
         return text.split('.')[0];
    });
});

フィドル中に有効なマークアップが必要であることを忘れないでください。最後に、なぜ「28 ドル」が必要なのかわかりません。「$28」じゃないの?上記の JS は後者を行います。

于 2013-03-28T00:06:27.080 に答える