Tag: 函数

如何通过JSON传递函数名称并在javascript / jQuery中调用它?

我有一个JSON字符串,其中包含我需要调用的函数。 我的JSON看起来像这样: { “type”:”listview”, // the function I would like to call “content”:”dynoData.getRetailers()”, “custom_classes”:[“”,”nMT pickList”,””,””], “lib”:”static_listview.html”, “tmp”:”tmp_listview_inset”, “lang”:”locale_search”, … 我正在使用它在客户端上组装jQuery Mobile列表视图。 要获取动态数据,我需要调用dynoData.getRetailers() 。 但是我很难打电话:-) 这就是我正在尝试的: var dyn = $.parseJSON( passed_JSON_string ), content = dyn.content; 我希望调用它会触发函数,但它只是将函数名称作为字符串返回。 问题 : 怎么能触发实际function? 谢谢! 编辑 : 我将JSON字符串放在实际页面上的HTML元素上,我将用我正在构建的元素替换它。 这是HTML: 我可以把所有这些都放到data-属性中,但那会很麻烦…… 解决方案 :这有效: 1)将JSON更改为: …”method”:”getRetailers”, … 2)从Javascript调用: content = dynoData[ dyn.method ](); […]

用params调用用户定义的函数

我正在定义函数func1(); 我希望它采取一些参数,即 var func1(aaa, bbb){ //do something, anything! }; 那么我想稍后在doc中调用它: $(‘#some_id’).click(func1($this)); 但它不起作用。 我已经搞砸了一段时间,但jquery / javascript至少处理用户定义函数的方式非常奇怪。 some1能为我提供简单的代码片段吗? 谢谢

单击对象时停止mouseleave

如果我想要鼠标输入div,则会显示一个元素,然后当mouseleave时,元素消失。 我在mouseenter中有一个clickfunction,所以点击时会有一个下拉菜单。 我希望下拉菜单和元素即使在mouseleaves时也能保持活动状态。 因此,当有点击事件时,我希望鼠标在这种情况下不适用。 用户必须再次单击该元素或页面上的任何位置,以使元素和下拉菜单消失。 但是我想保持mouseleavefunction正常工作,所以如果用户鼠标移动div,该元素将显示,他们可以再次点击它。 我目前有类似的东西,但我不知道如何使鼠标在点击时不适用 $(“.div”).mouseenter(function(){ $(“.element”,this).show(); $(“.element”).click(function(){ $(“.dropdown”).show(); return false; }); }).mouseleave(function(){ $(“.element”,this).hide(); }); 编辑: HTML boxed element menu

当用户在alertbox上单击“确定”时,运行另一个javascript

基本上我有一个脚本每10秒检查一次数据库,并通过javascript警告框通知用户数据是否已更改。 但是当用户看到警报并单击“确定”时,我还需要更改数据库。 因此,当用户在javascript警报上单击“确定”时,是否可以运行javascript函数? 所以举个例子 function show_alert() { alert(“New data!”); } 当用户单击“确定”时,它应该运行此function function UpdateDB() { jQuery.ajax({ type: “POST”, url: “update.php”, data: ‘condition=ok’, cache: false, }); }

用ajax实时更新javascript变量

我有一个需要进行数值计算的javascript函数。 此计算中使用的某些数字存储在数据库中,它们将根据用户填写在线表单的方式而有所不同。 一旦用户填写表单,他们将单击CALCULATE按钮。 此时,在JS函数中,我想使用ajax从数据库中获取与用户选择的其他值相对应的值。 举个简单的例子:有3种尺寸的T恤,每种尺码都有不同的价格(存储在数据库中)。 用户选择大小,当他们点击CALCULATE时,我使用ajax来获得与他们选择的大小相关的价格。 问题是,我想使用ajax更新一些我稍后将在脚本中使用的变量。 我现在尝试这样做的方式不起作用,脚本中的变量没有从ajax更新,我只能从ajax调用的success函数内的数据库中访问值。 我理解这是因为ajax本质上是异步的,并且需要一些时间,等待从服务器返回数据,而该函数仍然继续运行 在下面的示例中,ajax调用返回JSON数据,我有一个名为isjson()的函数,用于测试返回的字符串是否实际上是JSON数据。 示例代码: function calculate_cost(){ var price = 0; var size = $(‘form#tshirt_form [name=”size”] option:selected’).val(); $.ajax({ url:’my_script.php’, type:’post’, data:’select=price&table=tshirts.prices&where=size = “‘ + size + ‘”‘, success:function(data){ if(isjson(data)){ data = $.parseJSON(data); data = data[0]; price = data[‘price’]; }else{ //display error getting data } } }); // continue code […]

另一个div中显示的一个div的鼠标坐标 – jquery

所以我有2个div: http://jsfiddle.net/n8rna/ 我需要以下内容: 我需要用class =“ccc”来跟踪div里面的鼠标位置/移动(坐标应该相对于这个div,而不是相对于页面) 那些坐标需要用class =“ddd”显示在div里面 如果可能的话,坐标应该在每10个像素(10,10 – 20,10等,而不是1,1 – 2,1 – 3,1 …)进行登记 我更喜欢jquery函数,但我也对其他方法(javascript或其他)开放。

jquery’变量’到php’变量’

我在这里遇到同样的问题,但我需要的是获取所选选项的值然后将其保存在php变量而不是文本框中。 我差不多花了两天时间寻找我的金币。 任何帮助都会。谢谢。 编辑这是我编写代码的方式。 $(document).ready(function () { $(“#country”).change( function () { var options = { url: “test.php”, type: “post”, dataType: “json”, data: “country=” + $(this).val(), //build your data string here success: function (json) { $(“#textbox”).val(json.country); } }; $.ajax(options); } ); }); India phil japan

禁用右键单击上下文菜单?

此工具在左键单击强度值时增加强度值,并在左键单击时递减值。 这样可行,但右键单击以减小值时会出现上下文菜单。 我怎么能摆脱它? 代码和演示 var Alexander = { Strength: “AlexanderStrengthVal”, Bonus: “AlexanderRemainingBonusVal”, Limits: { Strength: 60, } }; function add(character, stat) { var txtNumber = document.getElementById(character[stat]); var newNumber = parseInt(txtNumber.value) + 1; var BonusVal = document.getElementById(character[“Bonus”]); if(BonusVal.value == 0) return; var newBonus = parseInt(BonusVal.value) – 1; BonusVal.value = newBonus; txtNumber.value = newNumber; } function subtract(character, […]

jquery从函数返回?

我试图理解从函数中返回jquery中的值的正确方法。 我已经检查了API以及其他问题,但我找不到正确的方法来执行此操作。 我想要的只是一个返回的简单变量,所以我可以将它设置为全局变量。 这是我得到的: var a = 0, b, c; var imgArr = []; $(document).ready(function() { //populates array with images var smooth = popArr(); alert(smooth); } function popArr(){ $(“#thumb_slider”).children().each(function(index, element) { var newImg = $(“”).attr({ src: this.src, alt: ‘space’ }).addClass(index == 0 ? “left_slot” : (index == 1 ? “middle_slot” : “right_slot”)); imgArr.push(newImg); return imgArr; […]

function行为不正确,有什么不对?

我创建了一个工具,用于video游戏的角色创建。 我遇到的问题是: 战士和巫师 每人在魔力 或 武器力量上花费30点。 我尝试创建一个限制,这样你就可以在Power中花费最多25分。 发生了什么事情,它不会让你在其他权力中剩余的5分。 最重要的是,它同样适用于战士和巫师,它不应该。 每个人的个人限制应为25。 仅供参考:我也对权力施加限制,以便它们最多只能达到75,这是有意的。 这是代码和演示