Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么在获取ID时数据方法不能正常工作?_Javascript_Jquery_Jquery Mobile - Fatal编程技术网

Javascript 为什么在获取ID时数据方法不能正常工作?

Javascript 为什么在获取ID时数据方法不能正常工作?,javascript,jquery,jquery-mobile,Javascript,Jquery,Jquery Mobile,我正在尝试使用jquery的数据方法获取Id。我看到了一个运行良好的示例。 在本例中,当用户单击“添加”按钮“生成动态行”时,右侧有一个图标:“它会打开弹出窗口。单击“编辑”按钮时,会给出行的id。实际上,在本例中,开发人员使用 $('.edit_h').data('originalId', id); 当我在我的例子中使用它时,它给出了最后一个值。换句话说,如果生成三行并单击行的任何图标,它只显示“tc_3”。我也使用了相同的概念。但我不知道为什么我的输出出错 问题是您的电话是: $('.e

我正在尝试使用jquery的数据方法获取Id。我看到了一个运行良好的示例。 在本例中,当用户单击“添加”按钮“生成动态行”时,右侧有一个图标:“它会打开弹出窗口。单击“编辑”按钮时,会给出行的id。实际上,在本例中,开发人员使用

$('.edit_h').data('originalId', id);
当我在我的例子中使用它时,它给出了最后一个值。换句话说,如果生成三行并单击行的任何图标,它只显示“tc_3”。我也使用了相同的概念。但我不知道为什么我的输出出错


问题是您的电话是:

$('.edit_h').data('originalId', id);
每次添加测试用例时。由于您只有一个弹出菜单,因此每次都会替换菜单上的数据属性,因此最后添加的一个将始终存在

数据属性应该在listitem而不是弹出窗口上,然后当您单击listitem时,检索id并将其写入菜单数据属性

$(document).on("click", ".edit_delete_copyFunctiontiy_h", function (e) {
    var id=$(this).data('originalid');
    $('.edit_h').data('originalid', id);
    $("#Mainnavpanel").popup("open", {
        positionTo: $(this)
    });
});

$('.edit_h').click(function(){    
    alert("edit ID: "+ $('.edit_h').data('originalid'));    
})
更新


有没有可能在没有变量的情况下获取id我需要在没有全局变量的情况下获取id?有没有可能在没有全局变量的情况下获取idvariable@user3703527,看看最新的答案,然后拉小提琴。没有全局变量,id现在是本地的!所有的东西都在你的样品上起作用。我得到了每个点击图标的正确输出。你确定它不起作用吗?请检查我问题中的这把小提琴或第二把小提琴。我确定它不起作用。它起作用很好。请执行以下步骤。1)按两次“添加”按钮。单击第一个按钮的图标。然后单击编辑按钮,它给出“tc_2”。它应该给出“tc_1”,因为我单击了“tc_1” row@Gajotres请遵循以下步骤
$(document).on("click", ".edit_delete_copyFunctiontiy_h", function (e) {
    var id=$(this).data('originalid');
    $('.edit_h').data('originalid', id);
    $("#Mainnavpanel").popup("open", {
        positionTo: $(this)
    });
});

$('.edit_h').click(function(){    
    alert("edit ID: "+ $('.edit_h').data('originalid'));    
})