小编Del*_*D0D的帖子

DataTables:无法读取未定义的属性样式

我收到以下错误:

jquery.dataTables.js:4089 Uncaught TypeError: Cannot read property 'style' of undefined(…)
_fnCalculateColumnWidths @ jquery.dataTables.js:4089
_fnInitialise @ jquery.dataTables.js:3216
(anonymous function) @ jquery.dataTables.js:6457
each @ jquery-2.0.2.min.js:4
each @ jquery-2.0.2.min.js:4
DataTable @ jquery.dataTables.js:5993
$.fn.DataTable @ jquery.dataTables.js:14595
(anonymous function) @ VM3329:1
(anonymous function) @ VM3156:180
l @ jquery-2.0.2.min.js:4
fireWith @ jquery-2.0.2.min.js:4
k @ jquery-2.0.2.min.js:6
(anonymous function) @ jquery-2.0.2.min.js:6
Run Code Online (Sandbox Code Playgroud)

上面引用(匿名函数)@ VM3156:180的行是:

                TASKLISTGRID = $("#TASK_LIST_GRID").DataTable({
                    data : response,
                    columns : columns.AdoptionTaskInfo.columns,
                    paging: true
                });
Run Code Online (Sandbox Code Playgroud)

所以我猜这是失败的地方.

HTML ID元素存在:

  <table id="TASK_LIST_GRID" class="table table-striped table-bordered table-hover dataTable no-footer" width="100%" role="grid" …
Run Code Online (Sandbox Code Playgroud)

javascript jquery datatables node.js

99
推荐指数
7
解决办法
11万
查看次数

如何正确使用JSON.stringify和json_decode()

我试图通过以下方式将多维Javascript数组传递到我网站上的另一个页面:

  • 在数组上使用JSON.stringify

  • 将结果值分配给输入字段

  • 将该字段发布到第二页

  • 在发布的值上使用json_decode

  • 然后var_dump来测试

  • (直接回显发布的变量,看它是否完全通过)

第一页的Javascript:

var JSONstr = JSON.stringify(fullInfoArray);
document.getElementById('JSONfullInfoArray').value= JSONstr;
Run Code Online (Sandbox Code Playgroud)

第二页的PHP:

$data = json_decode($_POST["JSONfullInfoArray"]);
var_dump($data);

echo($_POST["JSONfullInfoArray"]);
Run Code Online (Sandbox Code Playgroud)

echo工作正常,但var_dump返回NULL

我做错了什么?


这让我解决了:

$postedData = $_POST["JSONfullInfoArray"];
$tempData = str_replace("\\", "",$postedData);
$cleanData = json_decode($tempData);
var_dump($cleanData);
Run Code Online (Sandbox Code Playgroud)

我不知道为什么,但帖子是通过一堆"\"字符分隔字符串中的每个变量

使用json_last_error()Bart返回时将其弄清楚JSON_ERROR_SYNTAX

javascript php arrays json stringify

43
推荐指数
5
解决办法
10万
查看次数

如何使用MongoDB在Heroku上托管我自己的Parse Server?

(要明确的是,我问这个问题,以便提供我发现的答案,以帮助其他同样受到Parse闭包影响的人)

Parse.com最近宣布他们将于2017年1月关闭商店,但幸运的是他们已经将他们的Parse Server软件开源,因此我们可以托管我们自己的Parse服务器实例.

我已经研究了可用于托管Parse Server的各种选项,并决定在Heroku上托管我的

我喜欢Parse,因为它很容易使用,而且我没有设置后端的真实经验.我曾尝试在线跟踪几个指南,但发现它们有点难以理解,模糊的步骤或步骤会让你在另一个安装了大量工具的网站上挖洞,这一切都让人感到有些困惑.

如何在heroku上托管Parse Server,将其设置为接受来自我的应用程序的跨域请求,创建MongoDB数据库,以及将我的所有数据从Parse迁移到新数据库?

heroku mongodb node.js parse-platform parse-server

28
推荐指数
1
解决办法
6828
查看次数

我如何阅读qcachegrind的UI?

qcachegrind用来查看由创建的配置文件日志Xdebug.我可以很好地查看文件,但我不知道我在看什么.

我已经尝试了谷歌,但我只是不断获得安装教程,没有关于如何理解显示器.

  1. 以下qcachegrind显示的内容告诉我有关我的应用程序的信息
  2. 我可以从这个文件中查看更多内容,还是这些所有可用数据?

(请在新标签页中打开图片以获得更好的视图)


在此输入图像描述

php xdebug xdebug-profiler

20
推荐指数
1
解决办法
4678
查看次数

使用Javascript检测两个字符串之间的差异

使用Javascript,我想检查两个字符串之间有多少差异.

就像是:

var oldName = "Alec";
var newName = "Alexander";
var differences = getDifference(oldName, newName) // differences = 6
Run Code Online (Sandbox Code Playgroud)
  • 添加到名称的任何字母都应计为每个字母的一个更改.
  • 更改字母应计为每个字母的更改.交换两个
  • 字母应该算作两个变化,因为你真正改变每个
    字母.
  • 但是,转换一个字母并插入另一个字母只能算作一个改变.

例如:

将"Alex"更改为"Alexander"将有5个更改,因为已添加5个字母

将"Alex"更改为"Allex"只会改变一个,因为您添加了"l"并将其余部分移位但未更改它们

将"亚历山大"改为"Allesander"将是2次更改(添加"l"并将"x"更改为"s").

我可以将每个名称拆分成一个字母数组,并在这个jsFiddle中使用以下函数轻松比较它们:

function compareNames(){
    var oldName = $('#old').val().split("");
    var newName = $('#new').val().split("");
    var changeCount = 0;
    var testLength = 0;
    if(oldName.length > newName.length){
        testLength=oldName.length;    
    }
    else testLength=newName.length;
    for(var i=0;i<testLength;i++){
        if(oldName[i]!=newName[i]) {
           changeCount++;           
        }
    }
    alert(changeCount);
}
Run Code Online (Sandbox Code Playgroud)

但是,我如何解释不换算的字母转换?


更新:这是我如何运作

Levenshtein距离正是我所需要的.谢谢彼得!

工作jsFiddle

$(function () {
    $('#compare').click(function () {
        var oldName = $('.compare:eq(0)').val(); …
Run Code Online (Sandbox Code Playgroud)

javascript string compare

18
推荐指数
1
解决办法
2万
查看次数

使用Swagger Editor在YAML中使用数组定义响应对象

我正在使用YAML在Swagger编辑器中进行API定义.我试图代表以下响应主体:

{
    success: true,
    ids: [123456, ...]
}
Run Code Online (Sandbox Code Playgroud)

这就是我的YAML的样子:

definitions:
  SuccessfulResponse:
    type: object 
    properties:
      success:
        type: boolean
        description: True if the all operations were successful
      ids:
        type: array
        items: 
          id: 
          type: string 
Run Code Online (Sandbox Code Playgroud)

香港专业教育学院尝试了几种不同的方式,但是这样看似无效

在此输入图像描述

如何正确描述上面给出的返回对象?

swagger swagger-editor

13
推荐指数
1
解决办法
2万
查看次数

如何在vagtead上自动启用Homestead中的php扩展

我在Homestead中使用Laravel 5.3,在VirtualBox上运行Vagrant 1.8.7.

我需要启用一些PHP扩展.

我知道我可以ssh到框中并编辑php.ini以启用扩展,但这似乎是一种非常反流浪的方式来做到这一点.

我想告诉Vagrant配置启用特定php扩展的盒子,这样我就可以简单地打电话vagrant up --provision,盒子就可以开始了(有点流浪吧?)

那么,我们如何在vagtead上自动启用Homestead中的php扩展?

php php-extension vagrant laravel homestead

12
推荐指数
1
解决办法
6479
查看次数

如何正确清除我的php会话数据?

我的php网站流程如下:

  • Page1.php有一个html表单,POST到Page2.php
  • Page2.php将所有POST数据存储到SESSION变量中,并有一个指向Page3.php的按钮
  • Page3.php有另一种形式,将其数据POST到Page4.php
  • 然后,Page4.php将其所有POST数据存储到SESSION变量中

我的问题是,用户单击Page4.php上的后退按钮返回Page3.php并更改一些输入可能是必要的.我们确定你们都知道当他们回到Page3.php时,表单将是空白的,因为整个页面将以其默认状态重新呈现.

为了解决这个问题并重新显示用户之前的输入我是这样做的:

<input value="<?php echo $_POST["guest1Ticket"];?> " type="text"  name="guest1Ticket" id="guest1Ticket" onblur="isTicketNumber(this)"  size ="22"/>
Run Code Online (Sandbox Code Playgroud)

这是重要的部分 - <?php echo $_POST["guest1Ticket"];?>

这可行,但给我带来了另一个问题.如果用户返回到Page1.php(在收集浏览器之前)并在他们到达Page3.php时重新开始该过程,则他们上次运行的数据将被加载到表单中.

我想我需要做的是在用户访问Page1.php时清除所有sdession变量.我试着这样:

<?php 
 session_start(); 
 session_unset(); 
 session_destroy(); 
?> 
Run Code Online (Sandbox Code Playgroud)

(上面是我文件的顶部,在第一个字符之前没有空格.)

Page1.php加载时不会生成警告,但会话变量未被取消设置.当我到达Page3.php时,上次运行的数据仍然被输入到表单中.

如何正确清除会话数据?

顺便说一下,我只需要这个就可以在Chrome中运行,那就是我测试的地方.

php session

10
推荐指数
1
解决办法
5万
查看次数

使用javascript从excel电子表格中读取数据的最简单方法?

我在Excel电子表格中列出了机场代码,名称和位置,如下所示:

+-------+----------------------------------------+-------------------+
|  Code |               Airport Name             |      Location     |
+-------+----------------------------------------+-------------------+
|  AUA  |   Queen Beatrix International Airport  |  Oranjestad, Aruba|
+-------+----------------------------------------+-------------------+
Run Code Online (Sandbox Code Playgroud)

我的Javascript传递了一个3字符的字符串,应该是航空公司代码.当发生这种情况时,我需要在电子表格中找到代码并返回机场名称和位置.

我想的是:

var code = "AUA";

console.log(getAirportInfo(code));

function getAirportInfo(code) {

// get information from spreadsheet
//format info (no help needed there)

return airportInfo;
}
Run Code Online (Sandbox Code Playgroud)

日志会写出来的地方:

Oranjestad, Aruba (AUA): Queen Beatrix International Airport

从电子表格中获取所需数据的最简单方法是什么?

额外信息:

  1. 电子表格包含超过17,000个条目
  2. 上面提到的功能最多可以连续调用8次
  3. 我不必使用我现在拥有的Excel电子表格
  4. 我永远不需要使用我的代码编辑电子表格

我确实在网上搜索,但我找到的所有东西都比我想要的东西复杂得多,因此很难理解我在寻找什么.

感谢您帮助我指明正确的方向.

javascript excel

9
推荐指数
1
解决办法
5万
查看次数

将光标设置到textarea中特定行的特定位置

我试图在某种程度上复制Microsoft Office的Outlook等程序中出现的"自动更正"功能.

对于初学者,只要用户在一行的开头键入"a"(字母a和空格),我想将该文本更改为"*Agent ["

如果你在textarea中从上到下打字,我写下面的内容可以正常工作.但是,如果您在textarea中的任何其他位置键入文本,则会更改文本,然后光标移动到textarea的末尾.

我希望光标始终放在更改文本的末尾.

我有变量中的行号,currentLineNumber我知道光标需要在该行的第8个字符之后,但我不确定如何告诉它去那里

理想情况下喜欢喜欢的东西

function setCursor(row, position) {
 //.... code to set cursor 
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能做到这一点?我对javascript或jQuery解决方案持开放态度(虽然我发现jQuery有点难以阅读和理解)

如果有更好的方法来实现我的整体需求,我也会对此持开放态度.

如果你不明白这个问题,这里有一个jsFiddle

javascript jquery textarea cursor textselection

9
推荐指数
1
解决办法
2万
查看次数