在IE7上,我没有收到回复的回复:
function updateItem(item) {
$.post("updater.php",{key:item.id, value:item.value},function(response) {
$('#response').html(response);
});
}
<div id="response"></div>
<select id="PRIMARY_KEY" onchange="updateItem(this)">
<option>1</option>
<option>2</option>
</select>
<?php
echo 'UPDATED KEY: ' . $_POST['key'] . ' TO: ' . $_POST['value'];
?>
它适用于我所有其他浏览器。那是为什么?
编辑:最初,我试图回答this question。
答案 0 :(得分:3)
试试这个:( 2次修改:value
的...值和<option value="1">1</option>
)
<script>
function updateItem(item) {
$.post("updater.php",{key:item.id, value:item.options[item.selectedIndex].value}, function(response) {
$('#response').html(response); });
}
</script>
<div id="response"></div>
<select id="primary_key" onchange="updateItem(this)">
<option value="1">1</option>
<option value="2">2</option>
</select>
我使用jsfiddle,IE7和debugBar来查找它们。 http://jsfiddle.net/d3xk8/
答案 1 :(得分:1)
通过jquery设置innerHTML
时出错。
使用document.getElementById("#response").innerHTML = response;
答案 2 :(得分:0)
通常如果我没有从函数中得到回复,则意味着我错误地格式化了我想要传递的数据。我建议在你回响的字符串周围加上双引号,看看是否有效。