2013-04-09 93 views
1

我通过Ajax提交表单,并且我希望在提交表单时将项目名称预先添加到列表项目中。一切工作正常,除了拉取成功函数内所需的信息。数据[Project] [project_name]正在发布。如何在成功功能中获取项目名称?现在“数据”正在显示在列表中。我的表单中只有一个文本框。Ajax从成功函数检索数据

<script type="text/javascript"> 
    $(document).ready(function() {  
     var frm = $('#ProjectAddForm'); 
     frm.submit(function() { 
      $.ajax({ 
       type: frm.attr('method'), 
       url: frm.attr('action'), 
       data: frm.serialize(), 
       success: function(data) { 
        $('#ProjectProjectName').val(''); 
        $('#ProjectList').prepend("<li style='color: green;'>data</li>"); 

       } 
      }) 
     }); 
     return false;    
    }); 
</script> 

HTML:

<ul id="ProjectList"> 
      <?php foreach ($projects as $project): ?>      
       <li><?php echo $project['Project']['project_name']; ?></li> 
      <?php endforeach; ?> 
      <?php unset($project); ?> 
     </ul> 

<form accept-charset="utf-8" method="post" onsubmit="event.returnValue = false; return false;" id="ProjectAddForm" action="/callLog/projects/add"> 

回答

1

我需要一个数据类型补充: 'JSON' 的请求。

<script type="text/javascript"> 
    $(document).ready(function() {  
     var frm = $('#ProjectAddForm'); 
     frm.submit(function() { 
      $.ajax({ 
       type: frm.attr('method'),     
       url: "<?php echo $this->Html->Url(array('controller' => 'projects', 'action' => 'add.json')); ?>", 
       data: frm.serialize(), 
       dataType: 'json', 
       success: function(data) { 
        $('#ProjectProjectName').val(''); 
        $('#ProjectList').prepend("<li class='icon-remove', style='color: green;'>" + data.projectName + "</li>"); 
        $('#modalProject').modal('hide'); 
       } 
      }) 
     }); 
     return false;    
    }); 
</script>