我有一个jQuery滑块,它有两个句柄,每个句柄都有值,当我移动它们时会改变值。我想知道的是,是否可以将这两个句柄的值传递给单个onclick事件?
示例:
<a href="#" onclick="showAvailable(slidervalue1, slidervalue2)">Submit</a>
slidervalue1和slidervalue2是滑块中的值,并放在showAvalailable事件中。
以下是showAvailable()的代码:
function showAvailable(firstValue, secondValue)
{
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
document.getElementById("availableShown").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","showavailable.php?startShift="+firstValue+"&endShift="+secondValue,true);
xmlhttp.send();
}
有可能吗?如果是这样,我该如何通过呢? 任何一种哦帮助表示赞赏。提前谢谢。
答案 0 :(得分:1)
只需获取滑块当前值:
$("#yourSliderID").slider("value");
http://jsbin.com/hewulaze/2/edit?js,console,output
$(function() { // DOM ready
//
var $sli1 = $('#slider1'),
$sli2 = $('#slider2');
$sli1.slider({
max: 1000,
value: 100,
slide: function( event, ui ) {
console.log( "Slider1 : "+ ui.value );
}
});
$sli2.slider({
max: 10000,
value: 5000,
slide: function( event, ui ) {
console.log( "Slider2 : "+ ui.value );
}
});
function showAvailable(){
alert( $sli1.slider("value") ); // test current values.
alert( $sli2.slider("value") );
}
$('#showAvail').click( showAvailable ); // Call function
});
现在您希望了解为什么在浏览器中看到带有值的警告框,让我们看看如何使用这些值。
您的新功能应如下所示:
function showAvailable(){
var firstValue = $sli1.slider("value");
var secondValue= $sli2.slider("value");
if (window.XMLHttpRequest){
xmlhttp=new XMLHttpRequest();
}else{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
document.getElementById("availableShown").innerHTML=xmlhttp.responseText;
}
};
xmlhttp.open("GET","showavailable.php?startShift="+firstValue+"&endShift="+secondValue,true);
xmlhttp.send();
}