小编Kry*_*ove的帖子

PHP反序列化JS序列化变量字符串

当用户点击'generate'元素时,我有以下代码,'serializeData'形式的数据在js中被序列化.这个字符串被传递给loadTemplate函数,而loadTemplate函数又将带有其他变量的字符串POST到php脚本进行处理.

我正在寻找的是一种在PHP中反序列化js字符串的方法或获取数据的最佳实践,这里是一个示例输出的服务数据,如PHP中的字符串所示: -

输入1 =会议和输入2 =选择+日期和输入3 =输入+文字和输入4 = NUM​​BER + MISSING

序列化的表单数据在userData变量的loadTemplate函数中传递给PHP.

功能: -

$("#generate").click(function () {
    if (eCheck == true) {

        var templateData = $("#serializeData").serialize();
        var templateID = $("#serializeData").attr("name");  

            loadTemplate(this, templateID, 3, templateData)         
    }
    return false;
});


function loadTemplate(obj, cat, call, userData) {
userData = typeof userData !== "undefined" ? userData : null; // Set userData to null if undefined.
var onSuccess = "#right";

if (call == 1) {
    onSuccess = "#left";
        switchButton(obj);
            $("#content").hide();
            $("#right-content").text("");
} 

 $("#loading").show();

$.ajax({
    type: …
Run Code Online (Sandbox Code Playgroud)

javascript php jquery serialization

17
推荐指数
2
解决办法
3万
查看次数

jQuery stopPropagation()?

从来没有遇到这个,任何人都可以给我任何指针吗?

我正在创建一个网络应用程序,用于将笔记发布到白板上.此时,spawn按钮将产生音符,但我想制作它以便用户可以单击画布上的任何位置(白板),它将在该位置产生一个新音符.

这是代码: -

$("#canvas").bind('click', function(e){

// Calculate offset for width, put box to the left top corner of the mouse click.
   var x = e.pageX + "px";
   var y = e.pageY + "px";

$("#note").clone().insertBefore("#insertAfter").attr("id", "note" + noteID).show();
    $("#note" + noteID).children(".title").text("Note " + noteID);
        $("#note" + noteID).css({left:x, top:y, "z-index" : zindex});

    noteID++;
    zindex++;

e.preventDefault();
e.stopPropagation();
e.stopImmediatePropagation();

});
Run Code Online (Sandbox Code Playgroud)

当用户点击其中一个音符时会出现问题,因为每次用户点击音符时,便会将音符克隆到画布中,从而创建另一个音符.我想停止此行为,并仅在用户单击空白画布区域时创建注释.我已经尝试过preventDefauly,stopPropagation和stopImmediate ......但是它们似乎都没有任何影响.

我也尝试过其他动作,例如音符点击,但似乎无法在正确的位置找到合适的音乐?还是我完全以错误的方式解决这个问题?

这里的例子:

http://www.kryptonite-dove.com/sandbox/animate

更新:

$('#canvas').on('click', '.note', function(e) {
    e.stopPropagation();
});
Run Code Online (Sandbox Code Playgroud)

这解决了注释冒泡的问题,但它现在阻止了注释类上的任何点击操作,我在这里未知的水域!我将不胜感激任何有关如何让点击操作恢复为音符标题和文字工作的指示:)

jquery user-interface jquery-ui stoppropagation

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

jQuery为什么:只悬停一次工作?

我一直在使用以下代码段在Chrome/Safari和FF中确定用户是否悬停在某个锚点上.

var isURL = $("a", obj).is(":hover");
Run Code Online (Sandbox Code Playgroud)

我已经看过不同的帖子:hover是一个CSS选择器,但我不能理解为什么代码返回true如果obj中有1个链接但抛出javascript无法识别的表达式悬停错误,如果有2个或更多.

这是一个小提琴:悬停工作: - http://jsfiddle.net/2kyaJ/122/

相同但多个元素(不工作): - http://jsfiddle.net/2kyaJ/121/

任何人都可以向我解释这个吗?

顺便说一句,我已经看到了这个... 我如何检查鼠标是否在jQuery中的元素上?

4年后,这仍然是确定用户是否悬停在元素上的最佳且看似唯一的方法吗?如果是,那么任何人都能提供一个例子吗?

编辑:不得不去捕鱼我正是我所需要的,但事实证明,这很简单,因为它的工作非常好.

我目前正在使用jQuery 1.9.1的插件中使用它,其中我在父元素(obj)的鼠标悬停上触发动画.希望其他人在将来发现它有用.从版本1.8开始,不推荐使用.length而不是.size作为.size.

        function isMouseOver() {
            if ($('a:hover', obj).length != 0) {
                return true;
            } else {
                return false;
            }                           
        }
Run Code Online (Sandbox Code Playgroud)

用法:

var isURL = isMouseOver();
Run Code Online (Sandbox Code Playgroud)

javascript css jquery hover mouseevent

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

遇到sql LIKE问题

我有以下查询:

SELECT * FROM `alerts` WHERE `title` LIKE `%template%` 
Run Code Online (Sandbox Code Playgroud)

这应该返回至少3个结果,标题包含"模板"一词,但我收到以下错误: -

1054 - 'where子句'中的未知列'%template%'

据我所知,它的语法正确并调用正确的列名.我错过了什么?

php mysql sql

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

sql fulltext返回null

我正在使用joomla CMS写入我的数据库,并编写了一个自定义前端.

我正在尝试获取'fulltext'行的内容.我试过mysql_fetch_assoc['fulltext']mysql_result($sql, 0, 'fulltext').两者都返回全文.这是查询字符串:

SELECT created, modified, title, introtext, 'fulltext', state, urls, created_by
  FROM table_content
 WHERE id='$id'
Run Code Online (Sandbox Code Playgroud)

这可能是我错过的非常明显的事情,因为全文似乎与没有引号的sql冲突.

任何帮助将一如既往地受到赞赏!

php sql joomla keyword

0
推荐指数
1
解决办法
163
查看次数

Facebook JS SDK登录的困惑

我有两个单独的js文件,domready.jsfb-jssdk.js.

jssdk处理加载sdk和登录.它在用户登录时从response.state返回正确的状态,具体取决于方案.

我感到困惑的是我如何使用FB响应中获得的数据和FB.api来获取用户登录时的名称和电子邮件,并使用jQuery在我的网站上使用它.

编辑: 我想知道如何在fb代码所在的单独的js文件中使用响应的内容,并将其与jQuery事件处理程序一起使用.

因此,如果我有一个名为testAPI()的函数将response.name输出到控制台,那么如何在另一个文件中获取response.name ="Kryptonite Dove"的数据呢?

testAPI()

function testAPI() {
console.log('Welcome!  Fetching your information.... ');
FB.api('/me', function(response) {
    console.log('Good to see you, ' + response.name + '.');
    var state = response.name;
    return response.name;

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

一些功能

   $("#id").click(function() {
      if (response.name == "Kryptonite Dove") {
        // Do something
      }
   });
Run Code Online (Sandbox Code Playgroud)

javascript jquery facebook facebook-graph-api facebook-javascript-sdk

0
推荐指数
1
解决办法
155
查看次数