2012-03-09 2 views
0

форма выглядит следующим образом:Не удается получить букмарклет POST формы со значением

<form action='localhost/test.php' method='post' target='test'> 
<input type='text' name='add_to_url' value='' /> 
<input type='submit' name='submit' value='Go' /> 
</form> 

И я не могу ничего даже близко подойти.

В идеале букмарклет будет использовать текущий URL веб-страницы как значение add_to_url, а затем отправить форму.

Любые провода?

ответ

0

Чтобы получить URL-адрес текущей страницы, вам необходимо использовать свойство location.href Javascript.

Чтобы начать работу с разработкой букмарклетов, вы можете пройти через следующие ссылки: http://www.bookmarklets.com/tools/categor.html http://betterexplained.com/articles/how-to-make-a-bookmarklet-for-your-web-application/

Кроме того, вы можете искать Букмарклеты кода Javascript на Search Bookmarklets

0

Ниже Javascript код, чтобы создать форму и опубликуйте его. Вы можете использовать его как get2post('http://site.com?a=1&c=2');

Вот простой генератор букмарклет, или Google для других: http://chris.zarate.org/bookmarkleter

function get2post(u, t) { // u = url, t = target 
    var p = u.split('?')[0]; 
    var q = u.split('?')[1].split('&'); 
    var d = document; 
    var f = d.createElement("form"); 
    f.setAttribute('action', p); 
    f.setAttribute('method', 'POST'); 
    f.setAttribute('target', t || '_parent'); 
    f.style.display = 'none'; 
    for (i = 0; i < q.length; i++) { 
     var e = d.createElement("input"); 
     var param = q[i].split('='); 
     e.name = param[0]; 
     if (param.length >= 2) e.value = decodeURIComponent(param[1]);   
     f.appendChild(e); 
    } 
    d.body.appendChild(f); 
    f.submit(); 
}