当我尝试通过AJAX更新整个选择框时,只能第一次使用。在php端,始终发送相同的信息,禁用一次选项字段并选择其他时间。
更换整个选择框时是否有问题?。
这是JS代码。
$(document).ready(function(){
$("select").change(function () {
tid=location.href.replace(/^.*\/|\.[^.]*$/g, '');
colores=$("#colores option:selected").val();
tallas=$("#tallas option:selected").val();
marcas=$("#marcas option:selected").val();
genero=$("#genero option:selected").val();
$.get("/ajax/getdata/" + tid + ";" + colores + ";" + tallas + ";" + marcas + ";" + genero, function(data){
// Asignamos las nuevas opciones para el combo2
$(".content").html(data);
});
})
});
答案 0 :(得分:0)
你为什么用“;”作为你的价值观的分隔符? 您应该使用"data" parameter instead:
var oData = {
'colores': colores,
'tallas': tallas,
'marcas': marcas,
'genero': genero
}
$.get("/ajax/getdata/", oData, function (data) {
// Asignamos las nuevas opciones para el combo2
$(".content").html(data);
});
在PHP页面中使用$ _GET []:
<?php
$colores = $_GET['colores'];
$tallas = $_GET['tallas'];
$marcas = $_GET['marcas'];
$genero = $_GET['genero'];
// Do what you need to do with this
?>
但是如果你的PHP总是返回相同的值而不应该,那么你的浏览器可能存在缓存问题:因为你对同一个网址发出了请求,你的浏览器一旦进行了调用,就会保留之前返回的数据对于每个下一个呼叫(为了减少带宽使用)。 为了避免此问题,您可以添加一个始终更改的参数(如时间戳)。
告诉我这个答案是否适合你,或者我会根据你的适应症进行调整。