0

HTML 要素を作成し、プロパティのマップを提供するための jQuery オーバーロードは、コントロールでは機能しないようです。ドキュメントで、IE ではタイプを変更できないため、それを指定する必要があることを見ましたが、IE と Chrome のプロパティ マップのすべてを無視しているようです。

$("<input type='text'>", {
    id: "foo",
    name: "foo",
    value: "test"
}).appendTo("body");

次の要素を作成しています:

<input type="text" />

動作を示す JSFiddle: http://jsfiddle.net/JyvBh/

4

3 に答える 3

1

タイプを他の属性の一部として追加する必要があり、それは機能します。このような:

$("<input>", {
    type: "text",
    id: "foo",
    name: "foo",
    value: "test"
}).appendTo("body");​

編集: jQuery ドキュメントによるサポートされている回避策

jQuery docsによると、回避策は実際には以下のように異なる形式を使用します。

$('<input type="text" />').attr({
    id: 'foo',
    name: 'foo',
    value: 'test'
}).appendTo("body");

上記の両方の方法を含むJSFiddle を更新しました。

これが役立つことを願っています!

于 2012-09-07T18:25:11.637 に答える
1

次のように書くと機能します。

$("<input>", {
    type : "text",
    id: "foo",
    name: "foo",
    value: "test"
}).appendTo("body");​
于 2012-09-07T18:25:23.363 に答える
0

これが正しいやり方です

$("<input />", {
    type:'text',
    id: "foo",
    name: "foo",
    value: "test"
}).appendTo("body");​

デモ

于 2012-09-07T18:25:25.133 に答える