私はJquery ajaxを使用して呼び出すデータベースWebメソッドがあります。これはサーバーからデータオブジェクトの配列を返します。それぞれのデータオブジェクトに対して、私は多分数十のフィールドを使ってフォームに値を設定したい。サーバーデータに基づいてJqueryでフォームを作成する最も効率的な方法
これらのフォームを生成して入力する最も効率的な方法は何ですか。
今、各レコードのJavaScriptコードにhtmlの文字列を作成し、それをページに追加します。次に、新しい要素にいくつかのイベントを追加します。
これは、6要素の配列の合計で約700ミリ秒、30要素の配列の4500ミリ秒で、firefoxで問題なく動作します。しかし、これは私の会社のための内部アプリであり、クライアントは自分のマシンでIE8しか使用できません。 IE8では、これは2-10秒かかる!長さ6と47秒の配列と長さ30の配列のために実際に完了することができた1回。@#$%IE8がやっていることは確かではありませんが...とにかく...もっと効率的なものが必要です。 ..
ありがとう!
MORE INFO:
編集:私は最初のものは次のとおりです。
$("#approvalContainer").empty();
Webメソッドのシグネチャ:
[WebMethod]
public List<User> ContractorApprovals()
は、だから私はメソッドを呼び出した後、データでこれを実行します。
for (var i = 0; i < data.length; i++) {
displayUserResult("#approvalContainer", data[i], false);
}
formEvents("#approvalContainer");
$("#approvalContainer").show("slow");
d
var div = "<div style=\"width:695px\" class=..........."
fillForm(div,data)
$("#approvalContainer").append(div)
formEventsのようなものは、クリックイベントを追加したスタイルのボタンを作成し、ウォーターマークを追加しない:isplayUserResultはこのようになります。
$(userForm).find(".form-web-userName").text(userObject._web._userName);
ユーザーフォームがdisplayUserResult機能で作成したdiv要素であり、ユーザオブジェクトは、AJAX呼び出しによって返される配列内のオブジェクトのいずれかです。
fillFormはこのようなものを行います。
詳細情報が必要な場合はお知らせください。
サンプルコードはありますか? – Nalum
ええと、私は短くて意味のあるものを取り除こうとしています。 – kralco626
これは実際にajaxデータを使ってフォームにデータを入れる方法を決定する方法によります。そこにあるロジックは何ですか?JSONの形式は何ですか? –