我有一个.aspx
页,包含了所有我.js
和JavaScript
单独jQuery
文件。该网页还具有不上的页面加载存在UserControl
,只有被点击某个按钮时,会出现。而UserControl
包含,除其他事项外,一个JavaScript
按钮。
我遇到的问题是连接新创建JavaScript
按钮没有在页面加载存在于我的.js
文件。
起初,我尝试添加一个jQuery
选择得到了UserControl
到这是在这样我现有的document.ready()
文件.js
里面住的按钮:
$(".TheClassOnMyUserControlButton").click(function () {
// do stuff here
}
但我无法得到它的任何东西我试图做出回应。所以我把我的jQuery
一个<script>
标签内的UserControl
页面本身和按钮突然开始响应。
因为我已经认识到,在jQuery
选择不是从.js
文件工作的原因是因为该按钮没有在页面加载存在,你无法选择不存在的事情,现在是有道理的。
所以,我的伪菜鸟开发者的大脑开始试图找出我怎么能刷新document.ready()
我.js
文件一旦UserControl
是在网页上,这样它会觉察到新创建的UserControl
及其按钮。
我问另一位开发者,我与它的工作,他们说去尝试bind.jquery没有解释如何。
谷歌搜索,导致我在这里像往常一样,我的jQuery
文档中看到,其bind()
方法已被弃用,他们建议使用on()
代替。
我想我明白了其他开发商的意思,我知道我想要做的,但我发现了一个有点模糊的方式,我不完全知道如何使用on()
达到我想要做的事。
我知道我可以只留下<script>
内UserControl
标签,但我想,如果我可以让我的所有JavaScript
和jQuery
在一个地方。
没有人有任何建议或东西我可以尝试?
我感谢所有帮助任何人都可以提供。
谢谢
你有很多选择绑定一个事件的按钮。
1)简单地编写一个函数,它绑定到你想要的事件的按钮。例如:
<script>function doStuff(){
....
}
</script>
<button onclick="doStuff()">Do Something</button>
2)你有你的功能,在您所创建的按钮的那一刻绑定。例如:
$('#Container').append('.button');
$('.button').on('event',doStuff);
对于深度的回答更我有看到你的代码
您可以通过查看整个文档绑定jQuery方法或使用“的”法事件,然后在“开”的方式指定了正确的选择。希望是有道理的。您可以查看下面的例子。
$(document).on("click", ".className", function (){ /*code here*/ });
事先创建按钮,隐藏它。然后,显示在其他操作的情况下,该按钮/节/面板。
C# code behind
control.Visible = false;
control.Visible = true;
or
Jquery/bootstrap front end
$('#myElementID').addClass('hidden');
$('#myElementID').removeClass('hidden');