2011-09-03 1 views
0

Я хочу добавить два входа с каждым key.name_units. это мой код, но не сработал:

$.each(ok, function (bu, key) { 
    $("<p/>").append(key.name_units, $("<input/>", { 
     type: "text", 
     Name: "a[]" 
    }), $("<input/>", { 
     type: "text", 
     name: "a[]" 
    })).appendTo(".list"); 
}); 

Как это !?

EXAMPLE

+1

Вам нужно будет объяснить, что вы пытаетесь сделать – bcoughlan

+1

Я не думаю, что Селена говорит на очень хорошем английском языке, поэтому попробуйте взглянуть на пример скрипки. –

+0

Связанный вопрос (как-то, я думаю): http://stackoverflow.com/questions/7291898/problem-in-use-of-each –

ответ

1

Вы определили неправильный селектор, который будет добавляться данные.

Вы определили <p/>, но если вы хотите добавить к пункту (<p>some text</p>), вы должны определить только p в качестве селектора JQuery: $("p").append().

У вас также нет тега <p> в вашем блоге в формате example.

Я также думаю, что вы передаете неправильные аргументы.

Опишите, что именно вы хотите сделать.

0

Чтобы использовать для перебора массива или объекта .each(), вам нужно использовать разные сигнатуры для ввода функции. Поэтому использование function(bu, key) не подходит *.

function(index, value) <<< Array 
function(key, value) <<< Object 

Ниже приведены два примера использования вашей разметки в качестве примера. Заметьте, я добавил немного ширины в UL, чтобы я мог показывать индексы и значения.

var ok = [1,2,3]; 

$('.list li').remove(); 

$.each(ok, function(index, value){ 
    $('<li>"key.name_units ('+index+', '+value+')" '+ 
     '<input type="text" name="out[]">'+ 
     '<input type="text" name="out[]">'+ 
     '</li>').appendTo('.list'); 
}); 

ok = { 
    four: '4', 
    five: '5', 
    six: '6' 
}; 

$.each(ok, function(key, value){ 
    $('<li>"key.name_units ('+key+', '+value+')" '+ 
     '<input type="text" name="out[]">'+ 
     '<input type="text" name="out[]">'+ 
     '</li>').appendTo('.list'); 
}); 

Что будет:

<li>"key.name_units (0, 1)" <input name="out[]" type="text"><input name="out[]" type="text"></li> 
<li>"key.name_units (1, 2)" <input name="out[]" type="text"><input name="out[]" type="text"></li> 
<li>"key.name_units (2, 3)" <input name="out[]" type="text"><input name="out[]" type="text"></li> 
<li>"key.name_units (four, 4)" <input name="out[]" type="text"><input name="out[]" type="text"></li> 
<li>"key.name_units (five, 5)" <input name="out[]" type="text"><input name="out[]" type="text"></li> 
<li>"key.name_units (six, 6)" <input name="out[]" type="text"><input name="out[]" type="text"></li> 

http://jsfiddle.net/userdude/SXXee/1/

* По крайней мере, я не думаю, что это.

 Смежные вопросы

  • Нет связанных вопросов^_^