Ajax非同步提交資料傳回值的換行問題執行個體分析_AJAX相關

來源:互聯網
上載者:User

本文執行個體分析了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程式設計有所協助。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.