1

この質問が ExtJS とどの程度関係があり、純粋な JavaScript とどの程度関係があるのか​​正確にはわかりません。とにかく、カンマ区切りの値を持つ文字列があります。に使用する必要があるため、GUIできるだけユーザーフレンドリーにしようとしています。やりたいことはほとんどできましたが、まだ達成できていないことが 1 つあります。文字列内のすべてのコンマを適切な画像に置き換えたいと思います。これは、私がやっていることに非常にうまく適合すると思いますが、今のところ、成功していません。

ExtJS に精通している方へ - レンダリング関数を使用して、グリッドの特定の列の各セルに対してこれを行っています。しかし、純粋な JavaScript 関数で問題を解決する必要があるのではないかと思います。これが私が今持っているものです:

_cusomizeString: function(dates) {
        if (dates != null)
        {
            var date = dates.replace(/,/g,"|");
            var www = date.split('|');
            var xxx = www.length;
            for (var i = 2; i < xxx; i+=3)
                {
                    www[i] = www[i] + '<br />';
                }
            var ggg = www.toString();
            var hhh = ggg.replace(/,/g,'<img src =" ' + D:\dir1\dir2\dir3\dir4\dir5\img.png + ' "/>');
            return hhh;

        }
        return dates;
    }

いくつかのバリエーションを試しましたが、エラーは発生しませんが、画像も表示されません。

ありがとう

レロン

PS

関数のこの変更により:

var finalString = tempString.replace(/,/g,'<img src ="http://www.finishingtouch.co.uk/assets/images/common/calendar_icon.png"/>');

これを視覚化できます:

画像の見え方

現在の主な問題は、最初の要素の前に画像を追加する方法です。これは、画像が欠落しているためです (特に日付が 1 つしかない場合に顕著です)。私は自分のreplace関数でこれを使用しようとしました:

'<img src ="file:///D:\\symapac\\src\\public\\img\\icons\\draft.png"/>'

しかし、コンソールログはこれを返し、画像が表示されません:

07-06-2012<img src ="file:///D:\dir1\dir2\dir3\dir4\dir5\img.png"/>16-06-2012

わかりました、私はほぼ最終的な解決策を持っています。これがどのように見えるかです:

最終調整後

これが私の最終的な機能です:

_checkDates: function(dates) {
        if (dates != null)
        {
            var date = dates.replace(/,/g,"|");
            var arrayOfDates = date.split('|');
            var stringLength = arrayOfDates.length;
            for (var i = 2; i < stringLength; i+=3)
                {
                    arrayOfDates[i] = arrayOfDates[i] + '<br />';
                }
            var tempString = arrayOfDates.toString();
            var finalString = tempString.replace(/,/g," ,");
                finalString = finalString.replace(/,/g,"<img src="+ "'" + pathToImage + "'" +"/>");
            var imgSrc = "<img src="+ "'" + pathToImage + "'" +"/>";
            var otuputString = imgSrc.concat(finalString); 

            return otuputString;

        }
        return dates;
    }

var finalString = tempString.replace(/,/g," ,");アイコン間のスペースに配置した多くのタブが常に同じであるという小さな問題がありますが、その理由はわかりません。しかし、それは私が望んでいたものに最も近いものです。

乾杯

レロン

4

2 に答える 2

1
'<img src ="file:///D:/dir1/dir2/dir3/dir4/dir5/img.png"/>'
于 2012-06-12T13:20:03.370 に答える
0

ファイル名の前にスペースがあり、ファイル名も引用符で囲まれていません。

于 2012-06-12T13:19:17.403 に答える