3

DEVELOPMENT環境では、ブール値を保持するためにHTML5データ属性を使用していました(これが進むべき道ではないことがわかりました)。したがって、たとえば:

<div id="x" data-mydata="True"></div>

そして、JSコード(jQueryを使用)でブール値を正常に取得しました。

var v = $('#x').data().mydata;
if(v == 'True') {...}

そして、これは完璧に機能しました-そしてFalse値についても同様に機能しました。

ただし、これをQA環境にプッシュすると、機能しなくなりました。値を「True」に設定しましたが、jQueryセレクターによって読み取られた値は「data-mydata」(データ属性の名前)でした。

上記のように、ブール値を処理する正しい方法を学習しました(値がfalseの場合は、データ属性を除外します)。

しかし、私の質問は、なぜこれが開発環境で一方向に(誤って)機能したのかということです。私たちは同じバージョンのjQueryを使用しており、私が確認した限りでは、dllは同じバージョンです。

参考までに-私たちの開発環境は現在、VS2010、ASP.NET MVC4.NET4.0です。

ありがとう

グリフ

4

1 に答える 1

0

以前はそのように使用されていなかったようです.dataが、ローカル マシンで動作する場合は、ブラウザーが QA 環境で同じではなく、値の取得に問題があると想定します。

コードを次のいずれかに変更してみてください。

 var v = $('#x').data("mydata");

 var v = $("#x").attr("data-mydata");
于 2013-02-15T08:48:19.480 に答える