我正在尝试将.click事件的变量传递到颜色框插件,如下所示:
$('.w_price_assess p.price_report > a').live('click', function() {
var $reportRef = $(this).attr('href');
var $reportID = $reportRef.substr($reportRef.lastIndexOf('/') + 1);
return false;
});
我需要{AJ}调用可以看到$reportID
,以构成网址的一部分。
可以这样做吗?我这样做的知识显然有限:(
答案 0 :(得分:2)
如何在click事件之外声明变量并为其提供公共可见性:
var $reportID = null;
$('.w_price_assess p.price_report > a').live('click', function() {
var $reportRef = $(this).attr('href');
$reportID = $reportRef.substr($reportRef.lastIndexOf('/') + 1);
return false;
});
现在您也可以在脚本的其他位置使用$reportID
。
答案 1 :(得分:0)
我正在尝试将$ reportID传递给颜色框插件,如下所示:
// Colorbox dialog window for price report
// Once dialog loaded append navigation header
$('.w_price_assess p.price_report > a').colorbox({
title: 'Price report',
transition: 'elastic',
innerWidth: '800px',
innerHeight: '650px',
opacity: '0.5',
onComplete: function() {
// Call the dialog header and append
$.ajax({
type: 'GET',
url: DashboardApplicationRoot + 'PriceReport/' + $reportID + '/header',
dataType: 'html',
cache: false,
success: function(data) {
$('#cboxTitle').append(data);
// re-initialise form styling
//$('form.jqtransform').jqTransform();
},
error: function(xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
// re-initialise scroll bars
$('#cboxLoadedContent').jScrollPane();
$('#cboxLoadedContent table').removeAttr('width');
$('.Section1').wrap('<div class="print_me" />');
$('.Section1').css({
'width': '95%',
'margin': 'auto'
});
$('.Section1 table').css({
'width': '100%',
'margin': 'auto'
});
$('#cboxLoadedContent > div').addClass('dialog_loaded');
},
onClosed: function() {
// fixes scroll bar duplication bug
$('#cboxContent .jScrollPaneContainer').remove();
}
});