1

結果値がグリッド列の入力に表示されないためですか? PS: テスト入力では大丈夫です! =( (関数 Produtos_AtualizarProdutoLista(@item.ProductId) を呼び出す別の入力があります。

助けてくれてありがとう!!!

// WEBgrid 列とテストの入力=========

grid.Column(
                format: @<input type="text" id="valorTotal[@item.ProductId]"              style="width:60%" />,
                header: "ValorTotal"
            )

                        )


<input type="text" id="teste"/>    

//スクリプト===============

function Produtos_AtualizarProdutoLista(productId) {


        var strAction = '@Url.Action("Produtos_AtualizarProdutoLista","InvoiceInput")';
        var quantity = document.getElementById('qtdCompra[' +productId+ ']').value;
        var buyPrice = document.getElementById('precoCompra[' +productId + ']').value;

$.get(strAction, { productId: productId, quantity: quantity, buyPrice: buyPrice }, function (dados) {
            $("#teste").val(dados.ValorTotal);
            $("#valorTotal["+productId+"]").val(dados.ValorTotal);
        });

//コントローラ

    [HttpGet]
    public ActionResult Produtos_AtualizarProdutoLista(int productId, decimal quantity, decimal buyPrice)
    {

        string valorTotal = (quantity * buyPrice).ToString();

        return Json(new { ValorTotal = valorTotal }, JsonRequestBehavior.AllowGet);

    }

簡潔で簡単な答えは、IE8 以下は、カラーリングopacityなどの透過性エミュレーターをサポートしていないということです。rgba()これをエミュレートするには、(現在は廃止された)filter構文を使用して DirectX レンダリングを内部的に呼び出します。これは jQuery が「可能な限り最良の意図した結果」を得るために内部で行おうとしていることですが、そうです、DirectX フィルターは画像で動作するため、見苦しくなります。 2 つの問題:

  • ClearType を適用できないため、アンチエイリアスがぴくぴく動く
  • DirectX は一番上にレンダリングしようとするため、トランジション中に個別のレイヤーが常に正しい順序で表示されないなど、スタックの問題が発生する可能性があります。

残念ながら、フィルターハックでは通常の両方の問題について説明しています。このページでいくつかの可能な解決策を見つけることができますが、一般的には、これが IE<=8 では適切に機能しないこと、および/またはそれらのブラウザーでフェードをスキップするために適切に機能を低下させることを受け入れるだけです。

4

1 に答える 1

0

次のようにすべきではありません: id="valorTotal['@item.ProductId']"?

于 2013-07-29T16:46:46.890 に答える