2017-03-07 57 views
0

我想实现在Web应用程序 这里查找是什么,我试图做一个例子:如何实现查找选择器使用jQuery

创建一个狗和采摘所有者:) enter image description here

意图是单击一个按钮,打开一个对话框,其中有一个视图与列表。当用户点击'Associate'按钮时,该行的数据被传递给'outter'视图,并用选取的数据填充一些控件。我试图用jquery的'on'和'trigger'自定义事件来实现这一点。

这里是我的方法: 创建狗/ Outter观点:

... 
<div id="dialogOwnerPicker" title="Pick the Owner" style="overflow: hidden;"> 

     </div> 

<input type="button" id="dialogOpener" value="Pick" /> 
... 

<script> 

    $(function() { 

     $("#dialogOwnerPicker").dialog({ 
      autoOpen: false, 
      height: 350, 
      width: 530, 
      modal: true, 
      open: function (event, ui) { 
       $(this).load("<-- people view url -->"); 
      }, 
      close: function (event, ui) { 
       $("#dialogOwnerPicker").dialog().dialog('close'); 
      } 

     }); 


     $("#dialogOwnerPicker").on("Associate", function (event, arg) { 

      //do something with arg like populating controls or anything else 
     }); 

     $("#dialogOpener").click(function() { 
      $("#dialogOwnerPicker").dialog("open"); 
     }); 



    }); 

</script> 

人/内部对话框查看:

... 
<input type="button" value="Associate" onclick="ClickButton('@item.Name')"/> 

... 
<script> 


    function ClickButton(arg) { 
     $("#dialogOwnerPicker").trigger("Associate", arg); 

    } 
</script> 

现在,这是行不通的。我错过了什么,或者这是不可能做到的?

韩国社交协会

回答

0

我觉得你的问题是这一点:

$("#dialogOwnerPicker").on("Associate", function (event, arg) { 

}); 

第一个参数是事件,所以你说on Associate这JS不知道什么是“准”是。

相反,你应该说“上单击按钮关联......”

$("#associate_button_id").on('click', function (event, arg) { 
    // Do something  
}); 

也有在jQuery的一个click功能,所以你可以简单地说

$("#associate_button_id").click(function (event, arg) { 
    // Do something  
}); 

希望这有助于。

+0

事情是,我试图保持内部视图最独立的可能从外部视图,因此它可以重复使用。我只是想让内部div传递数据,并让外部div负责完成它想要处理的数据,从填充控件或显示警报或其他任何内容... – DJPB