Php 如何使用$。每个函数接收两位数而不是一位数
我已经解决了从mysql接收数据的问题,它们将以(23,34,65,67…等)的形式出现,但出现了一个新问题,使用$。each()函数,我只接收单位数,如2,3,3,4,而不是23,34…等,如何使用$。each()函数在双位数上切片数据Php 如何使用$。每个函数接收两位数而不是一位数,php,mysql,jquery,Php,Mysql,Jquery,我已经解决了从mysql接收数据的问题,它们将以(23,34,65,67…等)的形式出现,但出现了一个新问题,使用$。each()函数,我只接收单位数,如2,3,3,4,而不是23,34…等,如何使用$。each()函数在双位数上切片数据 $("#add").click(function() { $.ajax({ type: "POST", url: "ajax.php", data: "buttons="+ tab_of_button,
$("#add").click(function()
{
$.ajax({
type: "POST",
url: "ajax.php",
data: "buttons="+ tab_of_button,
success: function(){
$('div.success').fadeIn();
$.get("sendback.php",function(data)
{
$.each(data, function(index, value)
{
alert(value);
});
});
}
});
return false;
}
sendback.php
<?php
$ask = mysql_query("SELECT numbers FROM buttons");
if(!$ask)
{
die('Incorrect ask'.mysql_error());
}
else{
while ($row = mysql_fetch_assoc($ask))
{
$tab[] = $row['number'];
foreach($tab as $buttons)
{
echo $buttons;
}
}
mysql_free_result($ask);
}
?>
html
<html>
<body>
.
.
.
<ul id="_button">
<li id="01" >01</li>
<li id="02" >02</li>
<li id="03" >03</li>
<li id="04" >04</li>
<li id="05" >05</li>
<li id="06" >06</li>
.
.
.
<li id="40" >40</li>
</ul>
</body>
</html>
.
.
.
- 01
- 02
- 03
- 04
- 05
- 06
.
.
.
- 40
看起来您没有使用从ajax调用返回的数据,因为参数名在引号中。您可以尝试更改此选项:
$('#_button').children().each(function() {
$(this).find('data').css("background","grey");
$(this).find('data').attr("disabled",true);
});
为此:
$('#_button').children().each(function() {
$(this).find(data).css("background","grey");
$(this).find(data).attr("disabled",true);
});
看起来您没有使用从ajax调用返回的数据,因为参数名在引号中。您可以尝试更改此选项:
$('#_button').children().each(function() {
$(this).find('data').css("background","grey");
$(this).find('data').attr("disabled",true);
});
为此:
$('#_button').children().each(function() {
$(this).find(data).css("background","grey");
$(this).find(data).attr("disabled",true);
});
您应该修复php文件的输出。如果这给了您一个字符串(数字),那么您在客户机上唯一能做的就是单独解析每个字符,或者将字符串作为一个整体进行解析 这将为您提供一个json数组,因此您可以获取客户端上的每个元素
$tab = array();
while ($row = mysql_fetch_assoc($ask))
{
$tab[] = $row['number'];
}
echo json_encode($tab);
您应该修复php文件的输出。如果这给了您一个字符串(数字),那么您在客户机上唯一能做的就是单独解析每个字符,或者将字符串作为一个整体进行解析 这将为您提供一个json数组,因此您可以获取客户端上的每个元素
$tab = array();
while ($row = mysql_fetch_assoc($ask))
{
$tab[] = $row['number'];
}
echo json_encode($tab);
接收数据的东西是字符串,所以,使用parseInt将数据更改为数字,在我使用$each函数但只获得数组的第一个索引后,更改的代码如下,可能我做错了什么
$.post('sendback.php', function(data)
{
var arr;
var number;
arr = jQuery.parseJSON(data);
$.each(arr, function(key, value)
{
number = parseInt(value);
$("#_button li").eq((number)-1).css("background","grey");
});
});
接收数据的东西是字符串,所以,使用parseInt将数据更改为数字,在我使用$each函数但只获得数组的第一个索引后,更改的代码如下,可能我做错了什么
$.post('sendback.php', function(data)
{
var arr;
var number;
arr = jQuery.parseJSON(data);
$.each(arr, function(key, value)
{
number = parseInt(value);
$("#_button li").eq((number)-1).css("background","grey");
});
});
对于现在的工作,我收到的数据是[“23”,“34”,“等等],但现在必须对这些数据进行切片,我使用$.getJSON函数获取数据,并使用splite函数对循环中的数组进行切片$每个函数,使用alert我应该按顺序获取数字,但函数不显示任何内容,有什么解决方案吗?为什么需要对数据进行切片?您可以简单地使用
$。每个(数据、函数(ix、值){alert(value)})
循环数据中的项目。我使用此切片数据禁用具有指定ID(数据中的数字)的按钮。$(“###u按钮li”).eq((值)-1.css(“背景”、“灰色”)$(“###u按钮li”).eq((值)-1.attr(“禁用”,true)$(“##u按钮li”).eq((值)-1.unbind()
您只需使用$.each()
即可实现这一点。只需使用您的代码,而不是我之前评论中的警告。这将起作用(),除非您有一个从php函数返回的更复杂的结构。我认为接收数据是字符串,所以,使用parseInt将数据更改为数字,在我使用$each函数但只获得数组的第一个索引后,更改的代码在上面,可能我做错了什么?就目前的工作而言,我接收的数据为[“23”,“34”,等等),但现在必须切片此数据,我使用$.getJSON函数获取数据,并使用splite函数切片循环中的数组$每个函数,通过使用alert,我应该按顺序获取数字,但函数不显示任何内容,有什么解决方案吗?为什么需要切片数据?您可以简单地使用$。每个(数据、函数(ix、值){alert(value)})
循环数据中的项目。我使用此切片数据禁用具有指定ID(数据中的数字)的按钮。$(“###u按钮li”).eq((值)-1.css(“背景”、“灰色”)$(“###u按钮li”).eq((值)-1.attr(“禁用”,true)$(“##u按钮li”).eq((值)-1.unbind()
您只需使用$.each()
即可实现这一点。只需使用您的代码,而不是我之前评论中的警告。这将起作用(),除非您有一个从php函数返回的更复杂的结构。我认为接收数据是字符串,所以,使用parseInt将数据更改为数字,在我使用$each函数但只获取数组的第一个索引后,更改的代码在上面,可能我做错了什么?