我已经实现了一个jquery弹出
作为
<script type="text/javascript">
$(document).ready(function () {
$("input[id$=btnclick]").click(function () {
if ($("#content").html() != "") {
AlertDialog($("#content").html());
}
});
});
function AlertDialog(msg) {
$.modaldialog.success(msg, {
width: 400,
height: 100
});
}
// $(document).ready(function () {
// if ($("#content").html() != "") {
// AlertDialog($("#content").html());
// }
// });
</script>
<asp:Button ID="btnclick" runat="server" Text="click me" />
在document.getready上正确打开弹出窗口 但点击弹出窗口没有打开。谢谢你的帮助
答案 0 :(得分:2)
我看到您将点击放在输入上,输入回发,可能您需要使用e.preventDefault();
来阻止它:
$(document).ready(function () {
$("input[id$=btnclick]").click(function (e)
{
if ($("#content").html() != "") {
// here prevent from post back
e.preventDefault();
AlertDialog($("#content").html());
}
});
});
答案 1 :(得分:0)
在您的属性选择器中:
$("input[id$=btnclick]")
你错过了内在的引语:
$("input[id$='btnclick']")
^ ^
您的JavaScript很好:http://jsfiddle.net/pf9PW/1/,with或没有内部引号(尽管)应该拥有它们。
答案 2 :(得分:0)
有一件事我会说,如果你有一个id,直接使用它,不要在所有输入中查找id。它只会增加浏览器的开销。所以不要使用
$("input[id$=btnclick]").click(function () {
if ($("#content").html() != "") {
AlertDialog($("#content").html());
}
});
使用
$("#btnclick").click(function () {
if ($("#content").html() != "") {
AlertDialog($("#content").html());
}
});
除非我们看到整个情况,否则无法解决您的问题。并尝试避免在函数中进行多次调用。而不是做
if ($("#content").html() != "") {
AlertDialog($("#content").html());
}
待办事项
var markup = $("#content").html();
if (markup != "") {
AlertDialog(markup);
}
优化代码是保护和加快应用程序安全的关键。