我刚刚开始使用Gridster jQuery插件,我在使用gridster.serialize()时遇到了麻烦.根据该网站,它应该创建一个JavaScript对象阵列,其中包含所有小部件的位置,可以编码为JSON字符串.
我只有一些基本代码:
$(function(){ //DOM Ready
$(".gridster ul").gridster({
widget_margins: [10, 10],
widget_base_dimensions: [140, 140]
});
});
Run Code Online (Sandbox Code Playgroud)
使用相应的HTML:
<div class="gridster">
<ul>
<li data-row="1" data-col="1" data-sizex="1" data-sizey="1">1</li>
<li data-row="2" data-col="1" data-sizex="1" data-sizey="1">1</li>
<li data-row="3" data-col="1" data-sizex="1" data-sizey="1">1</li>
<li data-row="1" data-col="2" data-sizex="2" data-sizey="1">2</li>
<li data-row="2" data-col="2" data-sizex="3" data-sizey="2">2</li>
<li data-row="1" data-col="4" data-sizex="1" data-sizey="1">3</li>
<li data-row="2" data-col="4" data-sizex="2" data-sizey="1">3</li>
<li data-row="3" data-col="4" data-sizex="1" data-sizey="1">3</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
我并不完全清楚gridster.serialize()函数是如何工作的.我只是想记录网格中所有图块的当前大小/位置,并将其放入某种数组中.有人有主意吗?
编辑:这是网站.
所以我知道你可以像LINQ一样使用OrderBy:
MyList.OrderBy(x => x.foo[0].Value).ThenByDescending(x => x.foo[1].Value);
Run Code Online (Sandbox Code Playgroud)
但是我处在这样一种情况下,我不知道x.foo会有多少属性,我想通过它们来订购.这可能吗?
编辑:在这个例子中,x.foo是KeyValuePair的列表,我按照键的顺序按值排序.
我正在为一家研究公司开发一个Web应用程序,其中一个要求是用户一次只能登录一台设备.
所以我开发了一个非常基本的系统,当你登录一些PHP更新数据库中用户的行从0到1时,当你点击注销按钮时,它会再次从1更新到该行.
唯一的问题是,如果用户不使用注销按钮并只是关闭浏览器,它将结束会话并将其注销,但数据库中的行将不会更新.
有没有办法在浏览器关闭时更新数据库?
我有两个数组充满数据.一个数组只是随机整数(例如1.7,2.8,3.4等),另一个数组是该数据的unix时间戳的相应列表(例如1366585199).
目前我的Highcharts代码看起来像这样:
dataArray = ("2.4","5.6","3.1", ...);
timeArray = ("1366585199","1366585233","1366585355", ...)
function foo(dataArray, timeArray) {
$('#viz_1').highcharts({
chart: {
type: 'line'
},
title: {
text: 'Data Index'
},
xAxis: {
type: 'datetime', // this isn't doing anything??
categories: timeArray
},
yAxis: {
title: {
text: 'Data Value'
},
},
series: [{
name: topicID,
data: JSON.parse("[" + dataArray + "]")
}]
})
};
Run Code Online (Sandbox Code Playgroud)
这可以工作并为页面呈现一个折线图,但X轴显然充满了大约50个Unix时间戳!
我似乎无法弄清楚如何让Highcharts API获取Unix时间戳数组,使用它来排列数据点,但只是定期在X轴上显示人类可读的日期?
我有一个名为Participant的MySQL数据库表,看起来像这样:
(idParticipant) - (firstName) - (secondName) - (gender) - (dob)
118 John Dunne m 1944-04-01
117 Mary Delaney f 1955-05-03
116 Adam Bermingham m 1920-01-01
115 Eamonn Reilly m 1987-03-19
114 Aaron Duane m 1990-07-08
119 Sarah Calvin f 1977-07-17
Run Code Online (Sandbox Code Playgroud)
当我使用此查询时:
SELECT * FROM `Participant` WHERE idParticipant = 118 OR 119;
Run Code Online (Sandbox Code Playgroud)
我想我应该得到以下结果:
118 John Dunne m 1944-04-01
119 Sarah Calvin f 1977-07-17
Run Code Online (Sandbox Code Playgroud)
但它只是返回整个表格.我的MySQL语法在哪里出错了?
所以我从XML文件中抓取一些信息,如下所示:
$url = "http://myurl.blah";
$xml = simplexml_load_file($url);
Run Code Online (Sandbox Code Playgroud)
除了有时XML文件是空的,我需要代码优雅地失败,但我似乎无法弄清楚如何捕获PHP错误.我试过这个:
if(isset(simplexml_load_file($url)));
{
$xml = simplexml_load_file($url);
/*rest of code using $xml*/
}
else {
echo "No info avilable.";
}
Run Code Online (Sandbox Code Playgroud)
但它不起作用.我想你不能那样使用ISSET.任何人都知道如何捕获错误?
我在循环访问多维数组并删除特定元素数组时遇到问题.我的多维数组看起来有点像这样:
myArray = [["Tom", "161"], ["Dick", "29"], ["Harry", "46"]];
Run Code Online (Sandbox Code Playgroud)
所以,如果我有数字29.循环通过这个数组并删除第二个元素是29的数组元素的最有效方法是什么?即["迪克","29"]
我正在使用这个jQuery AJAX函数,我正在试图弄清楚如何使用它的'data:'部分.根据这个页面(http://api.jquery.com/jQuery.ajax/),我可以使用'data:'将数字22发送到'process_stage.php',这样我就可以使用它了.
任何人都可以告诉我在process_stage.php页面输入数字22需要输入的内容吗?
function myAJAX(){
$.ajax({
url: 'process_stage.php',
data: '22',
dataType: 'json',
success: function(data) {
var videoid = data[0];
var currentID = data[1];
$('#youtube').html("<iframe width='400' height='225' src='http://www.youtube.com/embed/"+videoid+"?rel=0&autohide=1&showinfo=0&autoplay=1' frameborder='0' allowfullscreen></iframe>");
setTimeout(function (){
timedCount(currentID);
},1000);
}
});
}
Run Code Online (Sandbox Code Playgroud) 如果用户不更改页面10分钟,我会使用此代码记录用户.
$inactive = 600;
if(isset($_SESSION['timeout']) ) {
$session_life = time() - $_SESSION['timeout'];
if($session_life > $inactive) {
header("Location: logout.php");
}
}
$_SESSION['timeout'] = time();
Run Code Online (Sandbox Code Playgroud)
你可以看到它很简单.我在所有受保护页面的顶部包含此功能,如果脚本未运行10分钟,则下次刷新页面时,用户将被发送到我的注销脚本.
不过那就是问题所在.在$ session_life> $ inactive变为true之后,需要再次运行脚本以便用户注销.一旦成为现实,我需要立即退出该人.
如果事情变得太复杂,有没有办法做到这一点?(即不使用AJAX)
我正在努力减少我拥有的JS数量,而且我不确定为什么我不允许按照我正在尝试的方式去做.这只是代码,用于图像上的一些鼠标悬停/鼠标悬停功能:
$(document).ready(function() {
$("#social_btn_1").on('mouseover', function(){
$(this).attr('src', 'images/social_1_dwn.png');
})
$("#social_btn_1").on('mouseout', function(){
$(this).attr('src', 'images/social_1.png');
})
$("#social_btn_2").on('mouseover', function(){
$(this).attr('src', 'images/social_2_dwn.png');
})
$("#social_btn_2").on('mouseout', function(){
$(this).attr('src', 'images/social_2.png');
})
$("#social_btn_3").on('mouseover', function(){
$(this).attr('src', 'images/social_3_dwn.png');
})
$("#social_btn_3").on('mouseout', function(){
$(this).attr('src', 'images/social_3.png');
})
$("#social_btn_4").on('mouseover', function(){
$(this).attr('src', 'images/social_4_dwn.png');
})
$("#social_btn_4").on('mouseout', function(){
$(this).attr('src', 'images/social_4.png');
})
});
Run Code Online (Sandbox Code Playgroud)
而我正试图通过这样做来缩短:
$(document).ready(function() {
for (var i = 1; i < 5; i++) {
$("#social_btn_"+ i).on('mouseover', function(){
$("#social_btn_"+ i).attr('src', 'images/social_'+ i +'_dwn.png');
})
$("#social_btn_"+ i).on('mouseout', function(){
$("#social_btn_"+ i).attr('src', 'images/social_'+ i +'.png');
})
}
});
Run Code Online (Sandbox Code Playgroud)
任何人都可以解释为什么这不起作用,巩固我的代码的最佳方法是什么?(顺便说一下,我知道你可以用CSS3做这个东西,但我需要使用JQuery).谢谢.
我将这些配置文件保存在数据库中,其中包含许多随机信息,如姓名,性别,年龄等.
用户可以通过单击超链接来编辑他们的个人资料,并将其带到一个表单,就像他们第一次注册时填写的表单一样.我设计了它,所以所有文本输入字段都已经具有它们之前填充的值.这是一个示例:
<input type="text" name="fname" value="<?php echo $result['firstName']; ?>"/>
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,我从查询数据库创建的数组中回显了他们的名字.但问题是我使用单选按钮(以及下拉框)来处理性别等输入.
那么一旦我从数据库中确定他们是男性还是女性,我该如何检查相应的单选按钮?
我想我想在Angular中做一些相对简单的事情,但由于某种原因,我无法完全绕过ngClick,ngModel,ngChange或ngChecked来解决它.
我有一大堆重复的复选框,当检查一个时,一个函数提醒一件事,当它未经检查时,该函数会发出不同的警告.这是一些伪代码:
HTML:
<div id="topic" ng-repeat="50 times">
<input type='checkbox' ng-model='???' ng-click='myFunc($index)' />
</div>
Run Code Online (Sandbox Code Playgroud)
脚本:
function myFunc(index) {
if (checkbox == checked) {
alert('checkbox ' + index + 'checked!');
}
else {
alert('checkbox' + index + 'unchecked!');
}
}
Run Code Online (Sandbox Code Playgroud)
所以问题是我无法弄清楚如何判断重复中的哪个复选框以及何时取消选中.任何想法?