2013-06-18 5 views
0

У меня есть DIV, который содержит некоторые материалы из формы:Дубликат имя на форме входов

<div class="guides_chapters_container" id="cdefault" style=""> 
       <div class="guides_chapters_ctitle"> 
       <input class="guides_chapters_input" name="gtitle" type="text" value=""> 
        <div class="guides_chapters_upguide" onclick="javascript: guide_cmoveup(event);"></div> 
        <div class="guides_chapters_downguide" onclick="javascript: guide_cmovedown(event);"></div> 
        <div class="guides_chapters_deleteguide" onclick="javascript: guide_cdelete(event);"></div> 
       </div> 
       <div class="guides_chapters_bar"> 
        <center> 
        <div class="guides_chapters_button" style="font-weight:bold;" onclick="surround('[b]', '[/b]');">B</div> 
        <div class="guides_chapters_button" style="font-style:italic;" onclick="surround('[i]', '[/i]');">i</div> 
        <div class="guides_chapters_button" style="text-decoration: underline;" onclick="surround('[u]', '[/u]');">u</div> 
        <div class="guides_chapters_button" onclick="surround('[title]', '[/title]');">Título</div> 
        <div class="guides_chapters_button" onclick="surround('[center]', '[/center]');">Centrar</div> 
        <div class="guides_chapters_button" onclick="showdiv('guideimages'); ">Image</div> 
        <div class="guides_chapters_button" onclick="javascript: guide_bimages(event);">Big Image</div> 
        <div class="clear"></div> 
        </center> 
       </div> 
       <textarea class="guides_chapters_textarea" id="textarea" name="gmessage" rows="7" cols="25"></textarea> 
      </div> 
      </div> 

и им с помощью этого повторить этот DIV:

function add() { 
    var item = $('#cdefault').clone(); 
    item.attr({'style': ''}); 
    $('#ccontainer').append(item); 
} 

Все работает, но моя проблема что теперь вход (gtitle и gmessage) имеет одно и то же имя и обычно публикуется правильно. Есть ли способ добавить это имя после клонирования? или что-нибудь для решения этой проблемы?

+0

Где контейнер «ccontainer» и где вы вызываете метода «добавить ()? – reporter

+0

Вам также необходимо устранить повторяющиеся идентификаторы на странице. –

+0

это не проблема. Я вызываю метод add в кнопке, который работает очень хорошо. Моя проблема - обходной путь для этой формы ввода. Некоторые люди сказали, что я должен переименовать gmessage и gtittle с [] после. но тогда, как работать, что на почте? – user2469440

ответ

0

В основном оригинал и элемент клона имеют одно и то же имя. Попробуйте изменить имя элемента клона.

function add() { 
    var item = $('#cdefault').clone(); 
    item.attr({'style': ''}); 
    $('#ccontainer').append(item); 
    $('#ccontainer input[name="gtitle"]').attr('name', 'gtitle'); 
    $('#ccontainer textarea[name="gmessage"]').attr('name', 'gmessage'); 
} 

Надеюсь, это то, что вы ищете

С приращением каждая функция времени называется

var x=1; 
function add() { 
    var item = $('#cdefault').clone(); 
    item.attr({'style': ''}); 
    $('#ccontainer').append(item); 
    $('#ccontainer input[name="gtitle"]').attr('name', 'gtitle'+x); 
    $('#ccontainer textarea[name="gmessage"]').attr('name', 'gmessage'+x); 
    x+=1; 
}   
+0

Могу ли я сделать это с увеличением? так что gtitle и gmessage увеличиваются каждый раз, когда добавляется вызов? – user2469440

+0

'code' $ ('# cdefault input [id =" gtitle1 "]'). Attr ('name', $ xpto); $ ('# cdefault textarea [id = "gmessage1"]'). Attr ('name', $ xpto2); \t '$ ('# cdefault input [name =" $ xpto "]'). Attr ('id', $ xpto); $ ('# cdefault textarea [name = "$ xpto2"]'). Attr ('id', $ xpto2); 'code', если вы можете исправить это im done: P – user2469440

+0

Check it out Я добавил новую функцию для приращения , Надеюсь, это то, что вы ищете. – Markipe

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