innerhtml не работает на блоггере

Я работаю над простой системой голосования. Он отлично работает, когда два файла вместе (локально).

Однако, когда я публикую его в блоггере, он не может вывести результаты. (при клике голос регистрируется на веб-хосте, но результаты просто не отображаются!)

вот мой код:

<script type="text/javascript">
function getVote(int)
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("poll").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","http://pacontest.eu.pn/poll_vote.php?vote="+int,true);
xmlhttp.send();
}
</script>
<div id="poll">
<h3>Do you like this?</h3>
<form>
Yes:
<input type="radio" name="vote" value="0" onclick="getVote(this.value)" />
No:
<input type="radio" name="vote" value="1" onclick="getVote(this.value)" />
</form>
</div>

1 ответ

Это не innerHTML это не работает Это ваш звонок на внешний сайт. Вы не можете использовать XMLHttpRequest для получения ресурса за пределами вашего домена: это называется междоменным ограничением и встроено в спецификации браузера.

Он работает, когда PHP находится в том же домене, что и код, который GETс, потому что это не междоменное.

Вы можете обойти ограничение, используя прокси-скрипт в своем домене: страница запрашивает результат из этого серверного скрипта, и этот скрипт получает результат из истинного местоположения, возвращая этот результат в браузер.

Это вряд ли подходит для Blogger, поэтому Blogger предоставляет собственный виджет опроса.

Другие вопросы по тегам