我有一個彈出窗口,它是由懸停功能操縱的,它可以很好地處理它自己的問題,並且可以自行運行的ajax調用。現在我的目標是從懸停功能中製作一個ajaxcall,並在div標籤中返回一個部分視圖。我見過很多樣本,但一直無法讓它們工作。這是我的。有人可以幫助我解決這個問題,還是指向一個類似於我的解決方案?如何從我的函數內部進行ajax調用?
這裏有我想要的代碼:
$(function() {
$(".datepicker").datepicker({ dateFormat: 'mm.dd.yy' })
$("#dropdownselected1").val($("#categories").val());
});
$(function() {
var moveLeft = 0;
var moveDown = 0;
$('a.popper').hover(function (e) {
var id = {a:171};
$.ajax({
type:"POST",
url:"/Attendance/Details",
data:id,
datatype:"html",
sucess:function(data){
$('#div_id').html(data);
}
});
var target = '#' + ($(this).attr('data-popbox'));
$(target).show();
moveLeft = $(this).outerWidth();
moveDown = ($(target).outerHeight()/2);
}, function() {
var target = '#' + ($(this).attr('data-popbox'));
$(target).hide();
});
$('a.popper').mousemove(function (e) {
var target = '#' + ($(this).attr('data-popbox'));
leftD = e.pageX + parseInt(moveLeft);
maxRight = leftD + $(target).outerWidth();
windowLeft = $(window).width() - 40;
windowRight = 0;
maxLeft = e.pageX - (parseInt(moveLeft) + $(target).outerWidth() + 20);
if (maxRight > windowLeft && maxLeft > windowRight) {
leftD = maxLeft;
}
topD = e.pageY - parseInt(moveDown);
maxBottom = parseInt(e.pageY + parseInt(moveDown) + 20);
windowBottom = parseInt(parseInt($(document).scrollTop()) + parseInt($(window).height()));
maxTop = topD;
windowTop = parseInt($(document).scrollTop());
if (maxBottom > windowBottom) {
topD = windowBottom - $(target).outerHeight() - 20;
} else if (maxTop < windowTop) {
topD = windowTop + 20;
}
$(target).css('top', topD).css('left', leftD);
});
});
編輯 我更新成功......還是不打電話的動作。
如果你在jsbin.com上做了一個演示並只包含相關代碼(最小),那將會更容易幫助你。 http://sscce.org/ – m59
你有原始代碼中的'sucess:'輸入錯誤,還是隻是一個複製錯誤? – Barmar
@ m59很好的資源,謝謝! –