jQuery 實(shí)時(shí)保存頁面動(dòng)態(tài)添加的數(shù)據(jù)

需求:用戶填寫的東西个少,必須要實(shí)時(shí)保存

分析:監(jiān)聽用戶操作事件夜焦,如:change、keyup 等巷波,向后端發(fā)送請(qǐng)求

實(shí)際情況:

  1. 用戶填寫的表單卸伞,是通過 JavaScript 動(dòng)態(tài)新增的,這就需要使用為動(dòng)態(tài)新增元素綁定事件垮耳。
  2. 發(fā)送請(qǐng)求給后端终佛,取決于前面的必填項(xiàng)是否已經(jīng)完整填寫。
  3. 必須區(qū)分用戶是動(dòng)態(tài)新增了填寫欄目呢查蓉?還是在修改豌研?
  4. 當(dāng)前事件對(duì)象是什么唬党?怎么通過該對(duì)象獲取用戶輸入的數(shù)據(jù)驶拱?
  5. 用戶多次修改同一欄目,必須傳送帶有 ID 的數(shù)據(jù)給后端阴孟。目的税迷,用于識(shí)別是新增箭养,還是更新操作。

動(dòng)態(tài)新增代碼:

// template() 是一個(gè)模板格式化函數(shù)
$('#modal_pl_content').html(template('modal_temp', {data:''}));

模板代碼:

<script id="modal_temp" type="text/html">
<form class="cksd_comment_id">      
    <div class="col-sm-12 addID">
        <input type="hidden" name="comment_update_id" value="" />      
        <div class="col-sm-12 hr hr-18 dotted hr-dotted"></div>
        <div class="col-sm-3 form-group">                
            <label class="col-sm-3 control-label no-padding-right">評(píng)價(jià)ID</label>            
            <div class="col-sm-9"><input type="text" class="col-xs-12" name="commentID"></div>         
        </div>         
        <div class="col-sm-1 form-group">            
            <select name="star" onchange="checkIsInput(this)">               
                <option value="5">5</option>               
                <option value="4">4</option>               
                <option value="3">3</option>               
                <option value="2">2</option>               
                <option value="1">1</option>            
            </select>         
        </div>         
        <div class="col-sm-4 form-group">                
            <label class="col-sm-3 control-label no-padding-right">當(dāng)前數(shù)量</label>            
            <div class="col-sm-8">               
                <div class="col-sm-5"><input type="text" class="col-xs-12" name="now_yes" onkeyup="is_intdata(this,this.value)" value="0"></div>                    
                <label class="col-sm-1 control-label no-padding-left no-padding-right">of</label>               
                <div class="col-sm-5"><input type="text" class="col-xs-12" name="now_total" onkeyup="is_intdata(this,this.value)" value="0"></div>            
            </div>        
        </div>            
        <div class="col-sm-3 form-group">                
            <div class="col-sm-12">                    
                <label class="col-sm-1 control-label no-padding-left no-padding-right">Yes</label>                    
                <div class="col-sm-5"><input type="text" class="col-xs-12" name="add_yes" onkeyup="is_intdata(this,this.value)" value="0"></div>                    
                <label class="col-sm-1 control-label no-padding-left no-padding-right">No</label>                    
                <div class="col-sm-5"><input type="text" class="col-xs-12" name="add_no" readonly onkeyup="is_intdata(this,this.value)" value="0"></div>
            </div>            
        </div>        
        <div class="col-sm-1 form-group">總數(shù): <br><span class="total_yes">0</span> of <span class="totals">0</span></div>         
        <div class="col-sm-1 form-group delbox"><button type="button" class="btn btn-danger btn-xs" onclick="delPlID(this)">刪除</button></div>      
    </div>   
</form>
</script>

事件監(jiān)聽與發(fā)送請(qǐng)求代碼:

$(document).on("change keyup", ".cksd_comment_id", function(event) {   
/*   var current = event.target.tagName.toLowerCase();  
 if ((current != 'input') || (current != 'select')) {      
    event.preventDefault();   
  }  
*/   
 var praise_row = {};  
 praise_row.cpid_a = $("[name='cpid_a']").val();   
 praise_row.pt_a = $("[name='pt_a']").find("option:selected").val();  
 praise_row.dp_a = $("[name='dp_a']").find("option:selected").val();   
 praise_row.cptime_start = $("[name='cptime_start']").val();   
 praise_row.cptime_end = $("[name='cptime_end']").val();   
 praise_row.cpkeyword_a = $("[name='cpkeyword_a']").val();   
 praise_row.status = $("[name='cksd_status']").val();   
 if (praise_row.cpid_a && praise_row.pt_a && praise_row.dp_a && praise_row.cptime_start && praise_row.cptime_end) {      
    var comment_row = {};      
    $(this).find('input, select').each(function () {         
        var field = $(this).attr('name');         
        comment_row[field] = $(this).val();      
    });      
    var pp_id = $("input.cksd_praise_pid").val();      //console.log($(this));      
    var current_form = $(this);      
    var comment_id = $(this).children().find("[name='comment_update_id']").val();      
    var data = {};      
    if (pp_id) {         
        praise_row.id = pp_id;         
        comment_row.id = comment_id;         
        data = {praise: praise_row, comment: comment_row}      
    } else {         
        data = {praise: praise_row, comment: comment_row};      
    }      
    //console.log(data);      
    $.ajax({         
      type: 'post',         
      url: "<?php echo site_url('/praise/save_intime');?>",         
      data: data,         
      dataType: 'json'      
     }).done(function(res) {         
        if ((res.s == 0)) {            
          console.log($(this));            
          $('input.cksd_praise_pid').val(res.msg.p_id);            
          current_form.children().find("[name='comment_update_id']").val(res.msg.c_id);         
        }         
        console.log(res);      
    });   
}});
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末澡谭,一起剝皮案震驚了整個(gè)濱河市译暂,隨后出現(xiàn)的幾起案子撩炊,更是在濱河造成了極大的恐慌拧咳,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,542評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件祭衩,死亡現(xiàn)場(chǎng)離奇詭異阅签,居然都是意外死亡政钟,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門精算,熙熙樓的掌柜王于貴愁眉苦臉地迎上來碎连,“玉大人鱼辙,你說我怎么就攤上這事〉瓜罚” “怎么了?”我有些...
    開封第一講書人閱讀 163,912評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)捂寿。 經(jīng)常有香客問我,道長(zhǎng)秦陋,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮旷赖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘稚照。我一直安慰自己俯萌,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著棋恼,像睡著了一般。 火紅的嫁衣襯著肌膚如雪琉苇。 梳的紋絲不亂的頭發(fā)上悦施,一...
    開封第一講書人閱讀 51,370評(píng)論 1 302
  • 那天抡诞,我揣著相機(jī)與錄音,去河邊找鬼肴熏。 笑死蛙吏,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的鸦做。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼坛掠,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼屉栓!你這毒婦竟也來了友多?” 一聲冷哼從身側(cè)響起句灌,我...
    開封第一講書人閱讀 39,074評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤胰锌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后资昧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體格带,經(jīng)...
    沈念sama閱讀 45,505評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡叽唱,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了虎眨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嗽桩。...
    茶點(diǎn)故事閱讀 39,841評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡碌冶,死狀恐怖涝缝,靈堂內(nèi)的尸體忽然破棺而出譬重,到底是詐尸還是另有隱情害幅,我是刑警寧澤,帶...
    沈念sama閱讀 35,569評(píng)論 5 345
  • 正文 年R本政府宣布约啊,位于F島的核電站佣赖,受9級(jí)特大地震影響憎蛤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜萎胰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評(píng)論 3 328
  • 文/蒙蒙 一技竟、第九天 我趴在偏房一處隱蔽的房頂上張望榔组。 院中可真熱鬧联逻,春花似錦、人聲如沸包归。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至慨削,卻和暖如春洞渔,著一層夾襖步出監(jiān)牢的瞬間套媚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評(píng)論 1 269
  • 我被黑心中介騙來泰國打工磁椒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留堤瘤,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,962評(píng)論 2 370
  • 正文 我出身青樓浆熔,卻偏偏與公主長(zhǎng)得像本辐,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子医增,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,112評(píng)論 25 707
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理慎皱,服務(wù)發(fā)現(xiàn),斷路器叶骨,智...
    卡卡羅2017閱讀 134,656評(píng)論 18 139
  • 從早上讀完晨讀茫多,我就一直在反思自己忽刽,我的衣櫥里都是什么今膊,而思考這些的同時(shí)万细,我當(dāng)時(shí)身上所穿的是一件07年買的T恤,不...
    梅子的江湖閱讀 259評(píng)論 2 3
  • 看了一本書,名字叫《更好的人生》献起。 這是一部法國小說,讀慣了中國微信公眾號(hào)里的文章呆抑,再去讀外國的小說厌殉,用一貫快速的...
    愛所有的一切閱讀 302評(píng)論 0 1
  • 01 雨,斷斷續(xù)續(xù)芦拿,欲語還休地下了半個(gè)月之久扰藕。 在一周繁重的課業(yè)后未桥,終于到了周末冬耿。雨還在下著,我推脫掉了許多事,終...
    淇畔芷影閱讀 302評(píng)論 2 7