1
我正在rails 2.3.8上開發項目,我需要在模型對話框的下拉菜單中獲取選定的項目。請有人解釋如何在軌道上的模型對話框中做到這一點?如何在導軌2.3.8上的模型對話框中獲取選定的項目?
我正在rails 2.3.8上開發項目,我需要在模型對話框的下拉菜單中獲取選定的項目。請有人解釋如何在軌道上的模型對話框中做到這一點?如何在導軌2.3.8上的模型對話框中獲取選定的項目?
將與一些調整工作,因爲你提出任何代碼(給代碼,人們將能夠給出具體的答案)的一個例子:
在視圖像這樣由一個表單輔助生產:
<select id="user_role_ids" name="user[role_ids]">
<option value="1" selected="selected">Reader</option>
<option value="2">Author</option>
</select>
<div id="role_output"></div>
在JS與jQuery像這樣在選擇提取的名稱或型號的ID:
<script type="text/javascript" charset="utf-8">
$("select").change(function() {
var text = $('#user_role_ids option:selected').text()
var value = $('#user_role_ids option:selected').val()
$('#role_output').html(text+" =>"+value)
});
</script>
沒有必要在所有除非你想爲三軌涉及gger在控制器的動作爲好,從jQuery的情況後,爲它專門設置了一個行動,而不是提取值:
$.post('/controller/my_action', ...);
這是所有的observe_field做,取決於你想要什麼,你可能不需要它。
這個問題非常含糊,似乎是一個與Rails相關的JavaScript問題。您需要定義「獲取所選項目」的含義。你想立即提交價值嗎?或者將其存儲並稍後提交?另外,你想採取什麼行動?例如模式框關閉時或用戶更改選擇時。 –
當用戶在下拉菜單中選擇特定的項目時,我需要更新特定的div。但我嘗試使用observe_field來完成,但它對我無效。我正在使用「collection_select」下拉菜單。所以我需要知道是否有可能在軌道上。謝謝 –
是的,這很有可能。我幾乎沒有Prototype的經驗,而且很久以前,所以恐怕在設置observe_field時我沒有太多幫助。然而,我首先想到的是事件回調沒有被註冊或者JavaScript錯誤。你可以驗證你的JavaScript代碼是否在下拉框更改時執行?如果是這樣,是否有任何錯誤發生? –