Форма с javascript

Mapu0

Registered
Здравейте,

имам една html форма с малко php в нея.тя се състои от 1 Input и 2 select менюта.Обаче ми трябва да мога безрефреш на страницата да добавям още такива редове в html таблицата и после да си ги запиша всичките в база данни.Записването е лесно но нещо немога да разбера как да добавя още едно поле с тези три опции без да презареждам страницата.

Мерси предварително :)
 
Тоест искаш примерно ако някой избере Nokia да излезне drowpdown box със моделите на нокиа,ако някой избере sony ericcson да се появи dropdown box със моделите на sony ericcsson ?
 
не аз това съм го направил,искам следното

имам да кажем

HTML:
<input type="text" name="text" value="" />

И да кажеме като цъкна на някакъв бутон или няма значение да се покаже следното:

HTML:
<input type="text" name="text" value="" />
<input type="text" name="text" value="" />

Да се появи още едно нещо със същите неща и пак да си избирам и т.н.
 
http://www.google.bg/search?sourceid=chrome&ie=UTF-8&q=dynamic+add+new+input+javascript търси си кодчета :P ако не ти хареса до 3-4 дена ще направя аз едно с jquery :P вече идеята как ще стане е в главата ми :P
 
Да,мисля че след като си го преправя това ще ми свърши работа.Благодаря :)
 
Мисля,че това ще ти свърши работа- използва се за добавяне на множество файлове (едновременно качване)
[js]
function fileFields() {
var x = document.getElementById('imageUpload');
x.onclick = function() {
var i = parseFloat(this.lastChild.id)+1;
input = document.createElement("input");
input.setAttribute("type", "file");
input.setAttribute("name", 'imageName_' + i);
input.setAttribute("id", i);
this.appendChild(input);
}
}


function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
if (oldonload) {
oldonload();
}
func();
}
}
}

addLoadEvent(function() {
fileFields();
});


[/js]

HTML:
<a href="#" id="imageUpload"><input type="file" name="imageName_1" id="1" VALUE="addme"/></a>
 
Ползвай createElement (погледни в гугъл) и слагай за name="text[]"

Така ще стане, (като си преправи и първото да ти е с text[].

<input type="text" name="text[]" value="" />
<input type="text" name="text[]" value="" />
<input type="text" name="text[]" value="" />
<input type="text" name="text[]" value="" />

След това вади всички тия 4 резултата като масив от $_POST['text'];

Така се правят динамични полета.

Ето ти прост пример, за да му разбереш смисъла.

PHP:
<form action="" method="post">
<input type="text" name="text[]">
<input type="text" name="text[]">
<input type="text" name="text[]">
<input type="text" name="text[]">
<input type="submit" name="submit" value="submit">
</form>
<?= print_r($_POST['text']); ?>

Ето ти пример и за добавяне на полетата.

HTML:
<script type="text/javascript">
window.onload = function()
{
    document.getElementById('addtext').onclick = function()
    {
        var input = document.createElement("input");
        input.setAttribute("type", "text");
        input.setAttribute("name", "text[]");
        input.setAttribute("id", "text");
        document.getElementById('etctext').appendChild(input);
        return false;
    }
}
</script>
<form action="" method="post">
<input type="text" name="text[]" id="text">
<span id="etctext">

</span>
 <a href="" id="addtext">Add</a>
<input type="submit" name="submit" value="submit">
</form>
 

Back
Горе