2014-02-27 60 views
1

我有一個jQuery滑塊,它具有兩個手柄,每個手柄具有不同的值,並在移動它們時更改值。我想知道的是,是否可以將這兩個句柄的值傳遞給單個onclick事件?如何將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

能否請您出示'showAvailable' –

+0

您現在應該看到它。我編輯了我的帖子。 – rez

+0

是嗎?有什麼問題?在'slide'函數內部,你只需要改變你的變量值... –

回答

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(); 

} 
+0

我會接受你的答案。但是隻顯示一條提示,顯示我提交的值。但是,我如何將這些值傳遞給另一個PHP頁面,就像在帖子的代碼中一樣?當我點擊帶有onclick事件的超鏈接時,我想將這些值傳遞給showavailable.php。 – rez

+0

好的。哇,我不知道這是可能的。你能告訴我怎麼樣?儘管非常感謝你。 – rez

+0

它是有道理的。我知道警報來自哪裏。我只是不知道你可以將這些變量傳遞給php。我真的很抱歉,我只是一個初學者。非常感謝您的幫助。對此,我真的非常感激。 – rez