Javascript 将一个从link传递的变量合并到jQuery模式中,之后通过ajax发布

Javascript 将一个从link传递的变量合并到jQuery模式中,之后通过ajax发布,javascript,jquery,ajax,Javascript,Jquery,Ajax,我想将一个变量从一组链接传递到一个公共jQuery模式,但是在捕获变量时遇到了问题 我有一组链接,它们都调用相同的模式(VodkaBears调用的jQuery插件): 但我并不是以这种方式打开模式,控制此事件的remodal插件 我试图像这样捕捉属性: $(document).on('opening', '.remodal', function () { var jid = $(this).attr("id"); alert( 'The jobid is

我想将一个变量从一组链接传递到一个公共jQuery模式,但是在捕获变量时遇到了问题

我有一组链接,它们都调用相同的模式(VodkaBears调用的jQuery插件):

但我并不是以这种方式打开模式,控制此事件的remodal插件

我试图像这样捕捉属性:

    $(document).on('opening', '.remodal', function () {
        var jid = $(this).attr("id");
        alert( 'The jobid is ' + jid );
        $('#link_jobid').val( jid );
    }
但这会获取remodal窗口的id,而不是调用链接

    "The job id is mailmodal"
我做错了吗?如何从调用链接捕获变量并将其转换为模态形式

编辑

感谢下面的Norlihazmey Ghazali,我能够实现这一点——答案非常简单:

$("[data-remodal-target='mailmodal']").click(function(){
    var jid = $(this).data('jobid');
    // alert( 'The jobid is ' + jid );
    $('#link_jobid').val( jid );
});

谢谢大家-爱这个网站

也许您需要使用全局变量进行赋值,定义全局变量,并将
数据jobid
值赋值到该变量中,最后让事件在触发时跟踪它。尝试以下代码(不确定是否工作):


//声明全局变量
gJobId变种;
//为锚点注册单击事件
$(“[data remodal target='mailmodal']”)。单击(函数(){
//分配到全局var
gJobId=$(this.data('jobid');
});
$(文档).on('opening','.remodal',函数(){
//让我们抓住全局变量
var jid=gJobId;
警报(“作业ID为”+jid);
$('link_jobid').val(jid);
});

模式是否总是出现在页面上,然后在单击时显示?或者模态是从远程源加载的?我建议您将传递给控制台的
打开
处理程序的事件对象记录下来,并检查它是否包含对触发模态的元素的引用。模态在单击链接之前呈现(未从外部加载)。谢谢你的提示,CBroe:-)谢谢你的帮助,诺里哈兹梅·加扎利。甚至没有必要将值放入全局变量中,请参阅我的上面的编辑,了解我最终如何使用您的提示。欢迎您听到这个消息。只要工作正常,就继续前进:)
    $('a[href="#mailmodal"]').click(function() {
         var jid = JSON.parse($(this).attr("data-jobid"));
         $('#link_jobid').val( jid );
    });
    $(document).on('opening', '.remodal', function () {
        var jid = $(this).attr("id");
        alert( 'The jobid is ' + jid );
        $('#link_jobid').val( jid );
    }
    "The job id is mailmodal"
$("[data-remodal-target='mailmodal']").click(function(){
    var jid = $(this).data('jobid');
    // alert( 'The jobid is ' + jid );
    $('#link_jobid').val( jid );
});
<script>
  // declare global var
  var gJobId;
  // register click event for anchor
  $("[data-remodal-target='mailmodal']").click(function(){
    // assign into global var
    gJobId = $(this).data('jobid');
  });

  $(document).on('opening', '.remodal', function () {
    // let catch the global var
    var jid = gJobId;
    alert( 'The jobid is ' + jid );
    $('#link_jobid').val( jid );
  });
</script>