如何使此最小变量在范围中进行全局,以便将其传递给另一个函数?我尝试在功能之外声明它,但仍然不起作用。它将无法识别表单提交功能中的变量。
var min;
$( ".minBuyingSlider" ).on( 'slidestop', function( event ) {
var min = $(this).val();
});
$(".range_form").submit(function(e){
$.ajax({
'type': "GET",
'url': 'loc.php?range=' + min,
'data': {},
'success': function (data) {
$("#results").replaceWith(data);
}
});
e.preventDefault();
});
您是min
变量实际上是全局。在您的slidestop
事件处理程序中,您会在全局名称空间中遮蔽一个,这意味着它独立于另一个并存在,直到事件完成为止。删除它内部的重新支配,您应该很好:
var min;
$( ".minBuyingSlider" ).on( 'slidestop', function( event ) {
min = $(this).val();
});
...
问题是您在全局范围内和slidestop
事件内两次声明变量。保持这样的保留,
var min;
$( ".minBuyingSlider" ).on( 'slidestop', function( event ) {
min = $(this).val();
});
$(".range_form").submit(function(e){
$.ajax({
'type': "GET",
'url': 'loc.php?range=' + min,
'data': {},
'success': function (data) {
$("#results").replaceWith(data);
}
});
e.preventDefault();
});