CodeIgniter下拉列表(Javascript?)
问题描述:
有没有什么办法可以让我的下拉提交表单,而无需点击一个按钮来提交。我希望能够在我的网站上随时更改语言。我有所有的语言设置。这是我的下拉列表:CodeIgniter下拉列表(Javascript?)
<?php echo form_open('languages');
$language = array(
'select' => 'Select Language',
'english' => 'English',
'spanish' => 'Español',
'german' => 'Deutsch',
'french' => 'Français'
);
echo form_dropdown('language', $language);
echo form_hidden('current_page', uri_string());
echo form_submit('submit', $this->lang->line('header6'));
echo form_close();
?>
如何让表单在没有提交按钮的情况下工作?
答
最简单的方法是使用jQuery。您的表单和下拉列表应具有ID,以便更轻松地引用它们。
$attributes = array('id' => 'form1');
echo form_open('languages', $attributes);
...
echo form_dropdown('language', $language, null, 'mydropdown');
还包括以下JavaScript(您需要加载jQuery在此页面上工作)。我已经包含Google的托管版本,但如果您愿意,可以在本地安装。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#mydropdown").live("change keyup", function() {
$("#form1").submit();
});
});
</script>
你不严格需要绑定KEYUP,你可以只绑定到更改事件(在这种情况下,你可以取代现场(“变”)与简单的改变(),但KEYUP包括键盘修改下拉。
答
我用平变化与任何生活选择菜单......使得它非常非常容易断火等方法。
<select id="myID" onchange="alert('Fired!')"><option value="gold">Beer</option>