DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> AJAX入門 >> AJAX基礎知識 >> Ajax異步提交數據返回值的換行問題實例分析
Ajax異步提交數據返回值的換行問題實例分析
編輯:AJAX基礎知識     

本文實例分析了Ajax異步提交數據返回值的換行問題。分享給大家供大家參考,具體如下:

前面分析介紹了《Javascript基於AJAX回調函數傳遞參數》及《IE浏覽器與FF浏覽器關於Ajax傳遞參數值為中文時的區別》,學習了ajax回調函數傳參與針對不同浏覽器處理中文亂碼問題的方法。這裡就來分析一下ajax異步提交返回值中換行問題的處理技巧。

背景介紹:

需要實現的功能是:在下拉框中選擇分類,提交到PHP根據選擇的分類返回該分類下的成員名稱,返回值各成員姓名以換行的形式顯示到textarea中。

html代碼:

<form action="setduty.php?action=add" method="post" name="setForm" id="setForm">
<p> <label>類型:</label>
  <select name="type" id="typeduty">
  <option value="-1">選擇類型</option>
  <option value="1">值班首長</option>
  <option value="2">值班處長</option>
  <option value="3">值班員</option>
  </select>
</p>
<p class="opertext"> 
    <label>成員:</label>
   <textarea name="names" id="names" cols="30" rows="10"></textarea>
</p>

JQuery 代碼:

$(document).ready(function(){
 $("#typeduty").change(function(){
  var type = $("#typeduty").val();
  $.post("setduty_do.php",
   {
    'cid' : type,
   },function(data,status){
    newData = data.replace(/\r\n/g,'');
     $("#names").html(newData);
  });
 });
});

PHP代碼:

if($type){
 switch($type){
  case "1":
   $arrs = getChiefList();
  break;
  case "2":
   $arrs = getDirectList();
  break;
  case "3":
   $arrs = getAttendantList();
  break;
  default:
  break;
 }
 $arr_names = "";
 foreach($arrs as $arr){
  if(strlen($arr[1])>2){
   $arr_names.= $arr[1]."\n";
  }
 }
 echo $arr_names;
}

php代碼中返回的值直接帶有換行“\n”,textarea 中IE和FF的換行符號都是 "\n",jQuery 的處理返回值中注意,使用
復制代碼 代碼如下:newData = data.replace(/\r\n/g,'');
處理返回的結果,用於去除最開始的換行符號,Ajax返回的值中,都自動帶有一個換行。這是Ajax本身帶有的。

希望本文所述對大家ajax程序設計有所幫助。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved