Отправлять данные POST при нажатии ссылки без использования форм?

У меня есть некоторые регулярные ссылки привязки тегов на моей странице, которые открывают всплывающее окно, которое отображает все данные GET, которые я передаю через URL:

<a href="javascript:window.open('view.php?data=a%20bunch%20of%20data');">View</a> 

Некоторые из этих данных очень длинные, и мой crappy веб-хост имеет очень небольшое ограничение на размер данных GET, которые могут быть переданы в URL-адресе. Есть ли способ сделать это с помощью данных POST, не используя html-формы?

вы также можете использовать XMLHttpRequest

http://www.w3schools.com/xml/xml_http.asp

Вам нужно будет использовать формы. Однако вы можете вложить свою гиперссылку в форму:

 <form method="post" action="somepage.php" id="form1"> <input type="hidden" name="field1" value="foo" /> <input type="hidden" name="field2" value="bar" /> <a href="somepage.php?field1=foo&field2=bar" onclick="document.getElementById('form1').submit(); return false;">Hyperlink</a> </form> 

Я просто столкнулся с такой же дилеммой и придумал это решение в jQuery:

 <a href="#" id="post-link">Example</a> <script type="text/javascript"> $(document).ready(function () { $('a#post-link').click(function() { $('body').append($('<form/>', { id: 'form', method: 'POST', action: '#' })); $('#form').append($('<input/>', { type: 'hidden', name: 'field1', value: 'foo' })); $('#form').append($('<input/>', { type: 'hidden', name: 'field2', value: 'bar' })); $('#form').submit(); return false; }); } ); </script> 

Одна вещь, которую я узнал из-за своего многолетнего опыта работы с веб-разработкой: если вы столкнетесь с ограничением от своего хостинга, разместите свой сайт где-то еще. Идти вокруг ограничения хостинга – независимо от того, что они есть, в конечном итоге не заставят вас долго ждать. Хостинг дешев, вы можете получить VPS с щедрыми ресурсами по очень разумным ценам в наши дни.

Это не стоит.