CodeIgniter / JQuery / Ajax:根据先前选择的值设置下拉列表

时间:2011-06-15 20:15:26

标签: jquery ajax codeigniter select drop-down-menu

我知道有人以各种方式提出这个问题,但我无法找到问题的明确答案。我在我的应用程序中使用CI / JQuery / Ajax进行CRUD操作的组合。在我的创建中有多个下拉列表,这些下拉列表从数据库中填充...每个用户选择的ID在保存时与新记录一起存储。当用户更新该记录时,我需要能够渲染更新页面,并填充下拉列表,但设置为所选值。您可以提供有关应用程序中的位置/如何设置此内容的任何指导,我们非常感谢。以下是我正在使用的代码的片段:

JQuery的:

$.ajax({
url: 'index.php/admin/getEventById/' + updateId,
dataType: 'json',            
success: function( response ) {
$( '#uEventName' ).val( response.event_name );
$( '#uEventType' ).val( response.eventType_eventType_id ); /*Obviously, this would work fine if I was setting the value of a textbox but this is the ID# of the value I want to have my dropdown default to */

我的观点:

 <p>
    <label for="uEventName">Event Name:</label>
     <input type="text" id="uEventName" name="uEventName" />
  </p>
  <p>
     <label for="uEventType">Event Type:</label>   <!--I'm populating the dropdown with all values, but need it to be set to value as obtained above (via the response) -->
            <?php        
                $eventtype_options = array();
                foreach($eventtypes as $eventtype){
                $eventtype_options[$eventtype->eventtype_id]=$eventtype->event_type;
                }
                echo "<td>" . form_dropdown('uEventType', $eventtype_options) . "</td>";
            ?>         
            </p>  

1 个答案:

答案 0 :(得分:0)

可能是你的jquery?

$('td select[name=uEventType]').val('"'+response.event_name+'"');

来自here