ドロップダウン選択時にサーバーサイドメソッド(Java)を呼び出す方法を探して、サーバー出力に基づいて(TRUEまたはFALSE)少数のチェックボックスを無効にします。誰かが同じものの周りのお勧めを提供できる場合は非常に感謝します。ドロップダウンの変更時にJquery Ajax Call to Server側メソッドに基づいてチェックボックスを有効/無効にします
2
A
答えて
1
私はこれがどのように行われるかを示す簡単な例をコーディングしました。まず、Javaアプリを設定してajax呼び出しを許可する必要があります。 Javaアプリケーションは、ドロップダウンメニューで選択されたオプションの値である単一のポスト変数名selected
を入力として取り込む必要があります。 Javaアプリケーションは、その後、あまりにも似たフォーマットされたJSON文字列を返す必要があります:
{
"disabled":[
"1",
"3",
"5"
]
}
1、3、および5を使用すると、無効にすることがしたいのチェックボックスのIDを表します。これらはいずれかのチェックボックスの任意のIDにすることができます。この配列にない場合、はがデフォルトで有効に設定されます。
HTML
: http://jsfiddle.net/bpstw/1/希望に役立ちます:
<select id="choiceSelector">
<option value="1">Something 1</option>
<option value="2">Something 2</option>
</select>
<br/><br/>
<div id="changingCheckboxes">
<input type="checkbox" name="" id="1"><br/>
<input type="checkbox" name="" id="2"><br/>
<input type="checkbox" name="" id="3"><br/>
<input type="checkbox" name="" id="4"><br/>
<input type="checkbox" name="" id="5"><br/>
<input type="checkbox" name="" id="6">
</div>
Javascriptを/ jQueryの
function UpdateCheckBoxStatus()
{
var CurrentChoice = $('#choiceSelector').val();
$.ajax({
url: "####YOUR JAVA APP URL####",
data: { "selected": CurrentChoice },
type: "post",
dataType: "json",
success: function (data)
{
SetCheckbox($('#changingCheckboxes').children("input:[type='checkbox']"), true);
$.each(data.disabled, function()
{
SetCheckbox($('#changingCheckboxes #' + this), false);
});
}
});
}
/// Sets the checkbox to enabled or disabled
/// @param th Jquery reference of one or more checkboxes
/// @param usable True/False if the checkbox is enabled/disabled
function SetCheckbox (th, usable)
{
if (usable)
th.removeAttr("disabled");
else if (!usable)
th.attr("disabled", true);
}
$(function()
{
$('#choiceSelector').change(UpdateCheckBoxStatus);
UpdateCheckBoxStatus(); //run for page load
});
はまた、ここでのjsfiddleです。
1
.change()
handlerをハンドラ内のドロップダウン要素に追加します。$.ajax()
requestは、選択した値をJavaに渡します(おそらくjQueryのショートカットajaxメソッド$.get()
または$.post()
は$.ajax()
よりも簡単です)。Ajax成功コールバックでは、関連するチェックボックスを有効または無効にします。
1
Javaのサーバーサイドコードを含むラジオボタンの別の同様のソリューション。
のjQuery/HTML 値1 値2 VALUE3
<span id="changingCheckboxes">
<label for="group1">One</label>
<input type="radio" name="group1" id="1" value="option1"/>
<label for="group1">Two</label>
<input type="radio" name="group1" id="2" value="option2"/>
<label for="group1">Three</label>
<input type="radio" name="group1" id="3" value="option3"/>
<label for="group1">Four</label>
<input type="radio" name="group1" id="4" value="option4"/>
</span>
のjQuery
function UpdateCheckBoxStatus() {
var CurrentChoice = $("#dropDownId").val();
$.ajax({
url: "/serverSideUrl",
data: { "selectedDropDownId": CurrentChoice },
type: "post",
dataType: "json",
success: function (data) {
SetCheckbox($("#changingCheckboxes").children("input:[type='radio']"), true);
$.each(data.disabled, function() {
SetCheckbox($("#changingCheckboxes #" + this), false); });
}
});
}
function SetCheckbox (th, state) {
if (state) th.removeAttr("disabled");
else if (!state) th.attr("disabled", true);
}
$('#dropDownId').change(UpdateCheckBoxStatus);
のJava
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,
IOException {
String selectedValue = request.getParameter("dropDownId");
YourDao yourDao = new YourDao();
Map<String, List<String>> disabledOptions = cycleDao.determineStateDropDown(selectedTool);
String json = new Gson().toJson(disabledOptions);
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(json);
}
関連する問題
- 1. ドロップダウンの値に基づいてチェックボックスを有効/無効にします
- 2. jqueryラジオボタンに基づいてテキストボックスを有効/無効にする
- 3. AngularJS変数に基づいたドロップダウンを有効/無効にする
- 4. jquery変数に基づいてフィールドを有効/無効にする
- 5. ドロップダウンの値に基づいてテキストボックスを有効にします
- 6. モデルとJqueryに基づいて有効または無効にします
- 7. チェックボックスに基づいて送信ボタンを有効/無効にする方法は?
- 8. MVVMを使用してWPFのチェックボックスの選択に基づいてテキストボックスを有効/無効にします。
- 9. チェックボックスに基づいてドロップダウン値を変更します
- 10. 選択した行に基づいてBindingNavigatorItemsを有効/無効にします。
- 11. 行の列の値に基づいてdataTableのチェックボックスを有効または無効にする方法
- 12. テキスト値に基づいてドロップダウン列を無効にする
- 13. ドロップダウン値に基づいてディレクティブを無効にする
- 14. 時間カウンターに基づいて、anglejsを使用してボタンを有効または無効にする方法
- 15. ロールに基づいてHTML要素を無効/有効にするSpringboot + Thymeleaf
- 16. サーバからのデータに基づいてHtmlボタンを有効/無効にする
- 17. Jqueryは、.load要求の出力に基づいてアクションボタンを無効または有効にします。
- 18. jqueryを使用してドロップダウンを無効にして有効にする
- 19. 他のドロップダウン選択に基づいてドロップダウンボックスを有効にします
- 20. Javascript - ドロップダウンに基づいて要素やテキストボックスを有効/無効にすることはできません。
- 21. パースペクティブに基づいてアクションセットを有効または無効にする方法
- 22. ドロップダウン値に基づくAjaxベースのチェックボックス
- 23. MultipleSelectorRowの値に基づいて行を有効/無効にする
- 24. jQueryを無効にして、選択したオプションに基づいて有効にする
- 25. チェックボックスを有効/無効にする
- 26. jqueryのチェックボックスの有効/無効
- 27. JQuery - 行ごとにチェックボックスを有効/無効にする
- 28. ドロップダウン値の変更時に無効なタブのクラスを変更します
- 29. vbaの条件/テキストの変更に基づいてボタンを有効/無効にする方法は?
- 30. JavaFXチェックボックスの状態に基づいてTableColumnを無効にする
+1。それを見て、必要に応じてあなたに戻ってきます。 –