Ajax multiple value



有谁知道我如何使用ajax发送所有这些东西进行搜索.php? 它已经在工作,但只有一个搜索栏。我想将这些变量添加到搜索栏中。排序变量(具有排序 id 的div(在开头发送数据只重要。 我认为将 var 保存到div 中并使用document.getElementById('').getAttribute('value')获取值是可行的,但我仍然需要了解如何将这行代码添加到此 ajax 中,并且 ajax 不断检查此div 中的更改。 我仍然希望 ajax 文件在我触摸搜索栏和div 之前发送输出

$(document).ready(function(){
load_data();
function load_data(query)
{
$.ajax({
url:"search.php",
method:"post",
data:{search:query},
success:function(data)
{
$('#result').html(data);
}
});
}
$('#search_text').keyup(function(){
var search = $(this).val();
if(search != '')
{
load_data(search);
}
else
{
load_data();            
}
});
});

function gettagValue() {
var checks = document.getElementsByClassName('tag');
var strtag = '';
for ( i = 0; i<checks.length; i++) {
if ( checks[i].checked === true ) {
str += checks[i].value + "#";
}
}
alert(strtag);
}

function getblacklistValue() {
var checks = document.getElementsByClassName('blacklist');
var strblacklist = '';
for ( i = 0; i<checks.length; i++) {
if ( checks[i].checked === true ) {
strblacklist += checks[i].value + "#";
}
}
alert(strblacklist);
}

function getbrandValue() {
var checks = document.getElementsByClassName('brand');
var strbrand = '';
for ( i = 0; i<checks.length; i++) {
if ( checks[i].checked === true ) {
strbrand += checks[i].value + "#";
}
}
alert(strbrand);
}
alert(document.getElementById('sort').getAttribute('value'));

您的意思是要发送当前alert的值吗? 对于初学者,返回这些值,而不仅仅是alert它们:

function gettagValue() {
// ...
return strtag;
}
// same for the getblacklistValue and getbrandValue functions

然后在 AJAX 代码中,调用这些函数以获取这些值并将它们包含在数据中:

function load_data(query)
{
let tagValue = gettagValue();
let blacklistValue = getblacklistValue();
let brandValue = getbrandValue();
$.ajax({
url:"search.php",
method:"post",
data:{
search:query,
tagValue:tagValue,
blacklistValue:blacklistValue,
brandValue:brandValue
},
success:function(data)
{
$('#result').html(data);
}
});
}

最新更新