Maison > interface Web > js tutoriel > le corps du texte

Méthode jQuery ajax pour modifier le contenu avec la souris click_jquery

WBOY
Libérer: 2016-05-16 16:43:07
original
1234 Les gens l'ont consulté

Le code d'une ligne dans un tableau existant ressemble à ceci :

<tr>
 <td><span class="catid">2</span></td>
 <td>公司介绍</td>
 <td>内部栏目</td>
 <td><span class="listorder" title="点击修改">2</span></td>
</tr>
Copier après la connexion

L'idée de modifier un contenu d'un simple clic de souris est la suivante :

1. Cliquez sur le numéro dans la colonne de tri des colonnes pour obtenir le contenu de la première colonne de la même ligne, c'est-à-dire l'identifiant de la colonne
2. Masquer les nombres dans le tri des colonnes
3. Insérez une zone de saisie dans la colonne de tri des colonnes, affichez le contenu dans le tri des colonnes dans la zone de saisie et définissez-le comme focus
4. Modifiez le contenu de l'entrée, soumettez les données lorsque le focus est perdu et utilisez ajax pour transférer les données vers le serveur. La méthode est la méthode post
. 5. Lors de la soumission des données, un rappel amical apparaîtra indiquant qu'elles sont en cours de modification. . . Ou attendez la photo
6. Renvoyez le message de réussite et réaffichez le contenu modifié. Supprimez la zone de saisie

.

Le code principal de jquery qui implémente cette fonction est le suivant :

$('.listorder').click(function(e){
 var catid = $(this).parent().siblings("td:eq(0)").text();//获取同一行上 第一列中的id值
 var listorder_now_text = $(this).text();//获取listorder中的内容 先保存起来
 $(this).text("");//设置内容为空
 var list_form = '<input type="text"  value="'+listorder_now_text+'" size=2 class="listorder_input" />' ;
 $(this).parent().append(list_form); //插入 input框
 $(".listorder_input").focus();
//自定义一个div 提示修改中
 var loading = '<div id="loading"><img src="img/loading.gif" alt="修改中..."/></div>';
 $(this).parent().append(loading);
 $('#loading')
  .css({
   "color" : "red" ,
   "display" : "none"
  })
//定义ajax的全局事件
 $(this).ajaxStart(function(){
  $('#loading').show();
 })
 $(this).ajaxStop(function(){
  $('#loading').remove();
 })
 $(".listorder_input").blur(function(){
  var thislist = $(this).siblings(); //取得同级的标签 即 修改后需要显示的 listorder
  $.post("ajax.php",{
  action : "mod_listorder",
  catid : catid ,
  listorder : $(this).attr("value")
  } , function(data, textStatus){
    $(thislist).text(data);
    }
  );//end .post
  $(this).remove();
 })//end function blur
})// end function click
Copier après la connexion

Le contenu d'ajax.php est simple. Il n'est utilisé qu'à des fins de traitement et de démonstration, et aucune donnée n'est soumise au serveur :

sleep(1);//延时运行1秒,查看效果用,实际代码中不需要
echo $_POST['listorder'];
Copier après la connexion
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal