在 asp.net mvc 的 ajax 调用中使用 Jquery 全局加载每个按钮
我有以下场景: 我有一个按钮\链接,里面有一个图像,如下所示:
<button type="submit" id="myButton" class="button"><img src="../../Content/images/check.png" id="defaultImage" />
SaveData!!!</button>
我们在这里一切都好!现在我需要做的是: 我希望单击后,图像会更改之前加载到页面中的加载元素,如下所示:
<img id="loadingImage" src="../../Content/images/loader.gif" style="display: none;" alt="loading"/>
然后,当加载完成后转回旧按钮图像时,我以以下代码结束:
function loader() {
var $button = $('#myButton');
if (btnState == '1') {
$button.find('img').hide();
$button.prepend($('#loadingImage'));
$('#loadingImage').css({ 'display': 'inherit' });
btnState = '0';
}
else {
$button.find('img').hide();
$button.prepend($('#defaultImage'));
$('#defaultImage').show();
btnState = '1';
}
}
这可以解决“单个”按钮的问题(因为我在函数中传递了它的 ID)但是,例如,当我有一个每行都有一个按钮的网格时,我发现在管理具有许多按钮的屏幕时对每个按钮执行此操作是不可行的。主要问题是:如何使该方法适用于页面中一个特定类上的所有按钮/链接? 目标是:单击按钮,获取图像并更改它并停止(可以手动)。我只是不想钩住所有按钮。
I have the following scenario:
I have a button\link with a image inside like this:
<button type="submit" id="myButton" class="button"><img src="../../Content/images/check.png" id="defaultImage" />
SaveData!!!</button>
We are OK here! Now what I need to do is:
I want on the click that the image change for a loading element that is previously loaded in the page like this:
<img id="loadingImage" src="../../Content/images/loader.gif" style="display: none;" alt="loading"/>
And then when the load complete turn back the old button image, I ended with this code:
function loader() {
var $button = $('#myButton');
if (btnState == '1') {
$button.find('img').hide();
$button.prepend($('#loadingImage'));
$('#loadingImage').css({ 'display': 'inherit' });
btnState = '0';
}
else {
$button.find('img').hide();
$button.prepend($('#defaultImage'));
$('#defaultImage').show();
btnState = '1';
}
}
This does the trick for ONE SINGLE button(since I pass its ID in the function) but, when I have for example a grid with a button on each line, I found inviable when managing a screen with many buttons do this for each of then. The main question is: How can I make this method general for all buttons/links on one specific class in the page?
The goal is: Click a button, get the image and change it and stop(can be manual). I just don't wanna have to Hook ALL buttons.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你应该做这样的事情,它将防止用户重复提交:
上面的所有代码都应该在 $(document).load 中
你的 HTML 应该如下所示:
现在任何东西都不需要 Id。
You should do something like this, it will prevent the user from double submitting:
All of the code above should be in the $(document).load
Your HTML should look like:
There is no need for Id's now on anything.