Javascript 检查所有数组是否有值且不为空
index.htmlJavascript 检查所有数组是否有值且不为空,javascript,php,jquery,html,arrays,Javascript,Php,Jquery,Html,Arrays,index.html <form id="players_form" > <input type=" text" name="main_name[]" value="1"> <input type=" text" name="main_name[]" value="2"> <input type=" text" name="main_name[]" value="3"> <input type=" text"
<form id="players_form" >
<input type=" text" name="main_name[]" value="1">
<input type=" text" name="main_name[]" value="2">
<input type=" text" name="main_name[]" value="3">
<input type=" text" name="main_name[]" value="4">
<input type=" text" name="main_name[]" value="5">
<input type=" text" name="sub_name[]" value="6">
<input type=" text" name="sub_name[]" value="7">
<input type=" text" name="sub_name[]" value="8">
<input type=" text" name="sub_name[]" value="9">
<input type=" text" name="sub_name[]" value="">
<input type="button" value="Submit" id="submit">
</form>
process.php
$decoded = json_decode($_REQUEST['list'], true);
print_r(array_filter($decoded));
结果
Array( [0] => Array ( [name] => main_name[] [value] => 1 )
[1] => Array ( [name] => main_name[] [value] => 2 )
[2] => Array ( [name] => main_name[] [value] => 3 )
[3] => Array ( [name] => main_name[] [value] => 4 )
[4] => Array ( [name] => main_name[] [value] => 5 )
[5] => Array ( [name] => sub_name[] [value] => 6 )
[6] => Array ( [name] => sub_name[] [value] => 7 )
[7] => Array ( [name] => sub_name[] [value] => 8 )
[8] => Array ( [name] => sub_name[] [value] => 9 )
[9] => Array ( [name] => sub_name[] [value] => ))
预期代码
if(all the arrays has value)
{
// True
}
else
{
Any one of the values in array is empty
}
您好,朋友们,在上面的代码中,我正在通过
AJAX函数
将表单值发送到process.php,在process.php
中,我应该检查所有文本框是否应该包含值,然后它应该继续下一步,否则,它应该响应您的空值。在我的代码中,最后一个框的值为空
,结果也是返回[9]=>数组([name]=>sub_name[]**[value]=>**)
,如何检查所有数组是否都有值。提前感谢使用empty()函数的最佳方法
if(!empty($decoded))
{
// True
}
else
{
Any one of the values in array is empty
}
使用empty()
函数的最佳方法
if(!empty($decoded))
{
// True
}
else
{
Any one of the values in array is empty
}
首先,您需要在将数据发送到服务器之前验证数据。例如:
var dataValid = true;
$("#players_form input").each(function(){
if ($(this).val() == ''){
dataValid = false;
}
});
if (dataValid){
// send data
} else {
alert('Fill in all the data!');
}
然后在服务器上,同样的事情:
$valid = true;
foreach($decoded as $input){
if ($input['value'] == ''){
$valid = false;
}
}
if ($valid){
// done good
} else {
echo "Fill in all the data!";
}
首先,您需要在将数据发送到服务器之前验证数据。例如:
var dataValid = true;
$("#players_form input").each(function(){
if ($(this).val() == ''){
dataValid = false;
}
});
if (dataValid){
// send data
} else {
alert('Fill in all the data!');
}
然后在服务器上,同样的事情:
$valid = true;
foreach($decoded as $input){
if ($input['value'] == ''){
$valid = false;
}
}
if ($valid){
// done good
} else {
echo "Fill in all the data!";
}
最好在发布数据之前进行检查,我们可以这样做every
允许您检查数组中的所有元素是否都通过了特定测试
var ok = data.every(function(element) {
return element.value; // if value is empty, it's false
});
if (ok) {
// POST request
} else {
}
最好在发布数据之前进行检查,我们可以这样做every
允许您检查数组中的所有元素是否都通过了特定测试
var ok = data.every(function(element) {
return element.value; // if value is empty, it's false
});
if (ok) {
// POST request
} else {
}
在PHP5(>=5.5.0)中,可以通过多维数组进行搜索
$user=Array
(
(0) => Array
(
(name) => 'Susan',
(age) => 21
),
(1) => Array
(
(name) => 'Mark',
(age) => 33
),
(2) => Array
(
(name) => 'Michael',
(age) => 25
));
$key = array_search(21, array_column($user, 'age'));
您可以在数组中搜索值。在PHP5(>=5.5.0)中,您可以通过多维数组进行搜索
$user=Array
(
(0) => Array
(
(name) => 'Susan',
(age) => 21
),
(1) => Array
(
(name) => 'Mark',
(age) => 33
),
(2) => Array
(
(name) => 'Michael',
(age) => 25
));
$key = array_search(21, array_column($user, 'age'));
您可以在数组中搜索'
值。在所有文本框上添加必需的
属性在所有文本框上添加必需的
属性我认为最好的方法是在有空输入时不发送ajax,因此在js部分进行验证。正如TusharI所评论的,我认为最好的方法是,如果存在空输入,就不要发送ajax,在js部分也要进行验证。正如Tushar所评论的那样