Javascript bir yöntem içinde bir form göndererek

2 Cevap php

Ben görüntülerin bir dizi sırasını yazdıran bir yöntem var. Ben yeni bir php sayfası bu göndermeniz gerekmektedir.

Şu anda aynı sayfaya emri yazdıran bir form var.

<form action="mainpage.php" method="post">
<div style="clear:both;padding-bottom:10px">

    <input type="Button" style="width:100px" value="Show order" onclick="saveImageOrder()">

</div>

Saveimageorder() görüntü gösterir ve orderString denilen bir değişken sırasını kaydeder

function saveImageOrder()
{
    var orderString = "";
    var objects = document.getElementsByTagName('DIV');

    for(var no=0;no<objects.length;no++)
    {
        if(objects[no].className=='imageBox' || objects[no].className=='imageBoxHighlighted')
        {
             if(orderString.length>0) orderString = orderString + ',';
             orderString = orderString + objects[no].id;
        }
    }
    document.getElementById('debug').innerHTML = 'This is the new order of the images(IDs) : <br>' + orderString;    
}

Bunun nasıl?

2 Cevap

(Bu test olduğunu unutmayın) ile form gönderebilirsiniz:

document.formname.submit();

Ilk (sayfa göndermek için) eylemi değiştirmek gerekiyorsa:

document.formname.action = 'some_other_url';

Eğer formu göndermek gerekiyorsa uyumsuz bir XMLHttpRequest ya da benzer bir şey kullanmak gerekir.

düz POST (hayır ajax) ile bir form alanına süreci (görüntü sipariş id alma) sonucunu saklamak gerekir:

<input type="hidden" name="imagesorder" value=""/>

orderString doldurulur sonra işlevi, bu alana değer ayarlayabilirsiniz:

document.getElementsByName('imagesorder')[0].value = orderString;

sonra formu gönderirseniz, değiştirerek bunu yapabilirsiniz sizin

<input type="button" .../>

ile

<input type="submit" .../>

sunucu tarafında sonra (php dev değilim) sonrası koleksiyon değeri alacak

$_POST['imagesorder']