我几乎不知道jQuery Ajax。我试图通过一次单击一起触发2个事件。但是不知何故它不起作用。我不明白我缺少的地方。
$(document).ready(function() {
$("#trigger").click(function(e) {
e.preventDefault();
var text = $(this).data('text');
var formname = $(this).data('formname');
var agree = confirm(text);
if (agree)
var getcururl = window.location.href;
var testid = $('#testid').val();
$.ajax({
method: 'POST',
url: 'test.php',
data: {
getcururl: getcururl,
testid: testid
},
success: function(data) {
if (data != '') {
alert(data)
}
},
error: function(data) {
alert('Something went wrong, Please contact admin');
}
});
});
else
return false;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a id="trigger" href="#" data-text="Are you sure?" data-formname="testform">Click</a>
<input type="hidden" id="testid" value="myname" />
寻找有关此问题的建议。如果只运行ajax发布而没有确认警报,那么它可以工作,我想在用户单击该按钮之前显示警报,然后在同意的情况下处理ajax发布。
我做对了吗?
如果将“其他”陈述移动到其所属位置,则可能会起作用。但更好的方法是将其分解为多个功能。这样可以更容易理解和维护。
$(document).ready(function() {
$("#trigger").click(function(e) {
var text = $(this).data('text');
var agree = confirm(text);
if (!agree){
return false;
}
runAjax();
});
});
function runAjax(){
var getcururl = window.location.href;
var testid = $('#testid').val();
$.ajax({
method: 'POST',
url: 'test.php',
data: {
getcururl: getcururl,
testid: testid
},
success: function(data) {
if (data != '') {
alert(data)
}
},
error: function(data) {
alert('Something went wrong, Please contact admin');
}
});
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句