2012-01-04 90 views
1

我有由單選按鈕提供不同選項的形式。我也有一個腳本,用不同的表單輸入顯示不同的div。jQuery的:其中div來顯示單選按鈕選擇determens,與「選中」屬性

這個腳本工作正常,我的問題是,我有一個「上一頁」鏈接,用戶可以在走一步和編輯已輸入的數據,而且我不能強迫不同的選擇與檢查屬性單選按鈕。它必須點擊,這是有道理的,因爲我的腳本使用.click事件。

但我怎麼能這樣說:「If $_SESSION[‘unemployed’] == ‘yes’ then echo ‘checked’」,它顯示了正確的選擇。

我希望我正確解釋自己,否則下跌免費問。
請查看代碼住在這裏http://jsfiddle.net/GEFMX/1/,我的問題是,如果一個或多個或複選框默認爲「選中」。

的JavaScript我使用看起來像這樣:

<script type="text/javascript"> 
$(function() { 
    $("input[name$='step2_student']").click(function() { 
     var diffoptions = $(this).val(); 

     $("div.studerende_janej").hide(); 
     $("#studerende" + diffoptions).show(); 
    }); 

    $("input[name$='step2_otheredu']").click(function() { 
     var diffoptions = $(this).val(); 

     $("div.othereducation_janej").hide(); 
    $("#othereducation" + diffoptions).show(); 
    }); 

    $("input[name$='step2_haveeducation']").click(function() { 
     var diffoptions = $(this).val(); 

     $("div.haveeducation_janej").hide(); 
     $("#haveeducation" + diffoptions).show(); 
    }); 
}); 
</script> 

真誠
- Mestika

+0

一兩件事,我想不是,你可以添加一個文件準備函數內部所有的句柄。我已經編輯了你的代碼塊,向你展示 – thomaux 2012-01-04 15:12:28

+0

@Anzeo你不應該改變那麼多OP代碼。如果您認爲這是正確的,請作出回答。 – Neal 2012-01-04 15:16:08

+0

如果我正確地理解了你的問題,即使在瀏覽器中來回訪問,你仍想保持單選按鈕選擇。你可以嘗試的是將每個收音機的選中狀態保存在一個cookie中,並在加載頁面時處理該cookie。 – techfoobar 2012-01-04 15:18:41

回答

1

您可以添加一些代碼到您的網頁加載觸發「喀嗒」對於那些所有無線電設備檢查。即類似的:

$(function() { 

// .. bind your click events here 

$('input[type="radio"]').each(function() { 
    if($(this).prop('checked')) $(this).click(); // trigger 'click' if checked 
}); 

}); 
1

在文檔準備就緒後,添加$("input[name~='step2_']:checked").click()。這將觸發已經檢查過的單選按鈕的點擊事件,從而有效地顯示div。