在输入字段

时间:2018-01-26 05:34:19

标签: javascript jquery r events shiny

我是Javascript的新手。如果我问傻话,请原谅我。我有一个示例Shiny应用程序Statistics Dashboard,可用于查找任何度量标准的基本统计度量,如均值,中位数等。用户必须上传一个csv文件,仪表板根据该文件选择文件中的所有数字变量,并提供选项以选择任何数值变量作为下拉列表进行分析。我想在应用程序中添加一个javascript代码,该代码将在用户从下拉列表中选择特定维度后捕获更新的度量(例如,均值)。例如,假设下拉窗口中的默认选定维度为“sales”,相应的均值为325.如果我选择另一个维度(假设)“profit”,则均值更改为37.现在我想添加一个javascript / jquery当我从下拉列表中选择“利润”(来自“销售额”)时,将捕获37的平均值的代码。我尝试了 .change 事件来检查下拉列表选择中的更改,当有更改时,捕获 h3 标记内的平均值。但是,我得到之前的平均值而不是更新的值,即当我选择“利润”(来自“销售”)时,我得到325而不是37。希望我对此很清楚。

我使用了错误的活动吗?如何在发生特定操作并更新值后捕获任何内容?

如果您需要有关我的查询的更多详细信息,请随时与我们联系。期待社区的帮助。

1 个答案:

答案 0 :(得分:1)

我认为这正是您正在寻找的

这是一个代码,可以检测某个元素的任何变化。

HTML:

$(document).ready(function() {

    $("#Profit").on("change", function()
    {
        $("#MeanLabel").text(this.value);

    });

    initialValue = $("#MeanLabel").text();
    CheckChanges();
})


function CheckChanges()
{

    if($("#MeanLabel").text() != initialValue)
    {
        //The Label Changes!
        initialValue = $("#MeanLabel").text();
        alert("New Label is: " + initialValue) 

    }
    setTimeout(CheckChanges, 200)
}

的Javascript / Jquery的:

var abc = {};
abc.A = 'Whatever';

这是工作样本。

https://jsfiddle.net/h68nxu4h/