ionic中列表項(xiàng)增加和刪除的實(shí)現(xiàn)方法
在項(xiàng)目中遇到表單似的頁(yè)面,需要進(jìn)行增加一行和減少一行的操作,例如:
要實(shí)現(xiàn)可以選中商品,以及對(duì)商品的信息列表進(jìn)行顯示與否的操作
html代碼如下:
<div class="chanpinxiangqing">
<div class="item item-divider">產(chǎn)品明細(xì)</div>
<div class="chanpinxiangqing" ng-repeat="master in masters">
<div class="item item-divider">
<div class="" ng-click="selectorOne($index)" style="display: inline-block;width: 50%;">
<div class="chioceHook sPround">
<div class="ion-checkmark-round ng-hide" ng-show="master.checked" style=""></div>
</div>
<span style="margin-left:20px;">產(chǎn)品</span>
</div>
<div ng-click="upOrdown($index);" ng-class="{true:'up',false:'upDown'}[master.updown]"></div>
</div>
<ul class="rzInfo" ng-show="master.up">
<li class="row">
<span class="col-xs-5"><!--產(chǎn)品類型-->{{master.chanpinType}}</span>
<select class="" ng-model="myselectType" mobiscroll-select="settings" mobiscroll-instance="demo">
<option value="0">請(qǐng)選擇</option>
<option value="1">中藥</option>
<option value="2">西藥</option>
</select>
</li>
<li class="row">
<span class="col-xs-5"><!--產(chǎn)品名稱-->{{master.chanpinName}}</span>
<select class="" ng-model="myselectName" placeholder="請(qǐng)選擇" mobiscroll-select="settings" mobiscroll-instance="demo">
<option value="0">請(qǐng)選擇</option>
<option value="1">注射劑</option>
<option value="2">麻醉劑</option>
</select>
</li>
<li class="row">
<span class="col-xs-5"><!--規(guī)格-->{{master.guige}}</span>
<select class="" ng-model="myselectGuige" placeholder="請(qǐng)選擇" mobiscroll-select="settings" mobiscroll-instance="demo">
<option value="0">請(qǐng)選擇</option>
<option value="1">10ml</option>
<option value="2">20ml</option>
</select>
</li>
<li class="row">
<span class="col-xs-5"><!--單位-->{{master.danwei}}</span>
<input type="text" name="" class="col-xs-8" value="" />
</li>
<li class="row">
<span class="col-xs-5"><!--數(shù)量-->{{master.num}}</span>
<!--<b class="" contenteditable="true" ng-model="dataclean" ></b>-->
<input type="text" name="" class="col-xs-8" value="" />
</li>
<li class="row">
<span class="col-xs-5"><!--單價(jià)(元)-->{{master.price}}</span>
<input type="text" name="" class="col-xs-8" value="" />
</li>
<li class="row">
<span class="col-xs-5"><!--總價(jià)-->{{master.total}}</span>
<input type="text" name="" readonly class="col-xs-8" value="" />
</li>
</ul>
</div>
</div>
<div class="" style="margin-top: 10px;padding:10px;text-align: right;background: #fff;"><span>合計(jì)發(fā)貨總額:</span></div>
<div class="">
<div class="btnadd" ng-click="add()">增加</div>
<div class="btndel" ng-click="delete()">刪除</div>
</div>
js代碼:
//控制器及服務(wù)等
.controller('fhShenQingAddCtrl', function($scope, CONFIG, $ionicSlideBoxDelegate, $rootScope, $http, $ionicPopup, faHuoService, $timeout, $window, loading, tool) {
//產(chǎn)品下的類型名稱及規(guī)格的選擇彈窗設(shè)置
$scope.settings = {
theme: 'mobiscroll',
lang: 'zh',
display: 'center',
cancelText: '取消',
setText: '確定',
onBeforeClose: function(event, inst) {
if(event.button == "set") {
$scope.startdate = event.valueText;//獲取選擇日期
console.log($scope.startdate)
} else if(event.button == "cancel") {
console.log("取消")
}
}
};
//增加
$scope.masters= [{'chanpinType':'產(chǎn)品類型',
'chanpinName':'產(chǎn)品名稱',
'guige':'規(guī)格',
'danwei':'單位',
'num':'數(shù)量',
'price':'單價(jià)(元)',
'total':'總價(jià)',
'checked':'true',//選中切換
'updown':'true',//下拉內(nèi)容顯示切換
'up':'true'//箭頭上下切換
}];
$scope.add = function() {
$scope.cope={'chanpinType':'產(chǎn)品類型',
'chanpinName':'產(chǎn)品名稱',
'guige':'規(guī)格',
'danwei':'單位',
'num':'數(shù)量',
'price':'單價(jià)(元)',
'total':'總價(jià)',
'checked':'true', //選中切換
'updown':'true', //下拉內(nèi)容顯示切換
'up':'true' //箭頭上下切換
};
var bb = angular.copy($scope.cope);
$scope.masters.push(bb)
console.log($scope.masters)
};
//刪除
$scope.delete = function() {
var arr = [];
angular.forEach($scope.masters,function(item,index){
if(!item.checked){
arr.push(item);
}
})
//console.log(arr)
$scope.masters = arr;
};
//切換箭頭的上下指向這里寫代碼片
$scope.upOrdown = function(rowNumber){
console.log($scope.masters[rowNumber].updown)
$scope.masters[rowNumber].up = !$scope.masters[rowNumber].up;
$scope.masters[rowNumber].updown=!$scope.masters[rowNumber].updown;
};
//某一行選中
$scope.selectorOne = function(rowNumber) {
console.log($scope.masters[rowNumber].checked)
$scope.masters[rowNumber].checked = !$scope.masters[rowNumber].checked;
};
})
完成的效果為:
點(diǎn)擊前

點(diǎn)擊后

以上所述是小編給大家介紹的ionic中列表項(xiàng)增加和刪除的實(shí)現(xiàn)方法,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
js計(jì)算兩個(gè)日期間的天數(shù)月的實(shí)例代碼
本文通過實(shí)例代碼給大家介紹了基于js計(jì)算兩個(gè)日期間的天數(shù)月,文中還通過一段代碼給大家簡(jiǎn)單說明了js計(jì)算兩個(gè)日期差的方法,感興趣的朋友跟隨小編一起看看吧2018-09-09
一種新的javascript對(duì)象創(chuàng)建方式Object.create()
這篇文章主要介紹了一種新的javascript對(duì)象創(chuàng)建方式Object.create(),感興趣的小伙伴們可以參考一下2015-12-12
layui實(shí)現(xiàn)二維碼彈窗、并下載到本地的方法
今天小編就為大家分享一篇layui實(shí)現(xiàn)二維碼彈窗、并下載到本地的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-09-09
js實(shí)現(xiàn)Select頭像選擇實(shí)時(shí)預(yù)覽代碼
這篇文章主要介紹了js實(shí)現(xiàn)Select頭像選擇實(shí)時(shí)預(yù)覽代碼,涉及javascript動(dòng)態(tài)遍歷及設(shè)置select選項(xiàng)的技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-08-08
webpack打包node.js后端項(xiàng)目的方法
本篇文章主要介紹了webpack打包node.js后端項(xiàng)目的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03
JavaScript實(shí)現(xiàn)復(fù)選框全選或全取消操作
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)復(fù)選框全選或全取消操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
js加載之使用DOM方法動(dòng)態(tài)加載Javascript文件
傳統(tǒng)上,加載Javascript文件都是使用script標(biāo)簽,我們也可以使用DOM方法,動(dòng)態(tài)加載Javascript文件,具體實(shí)現(xiàn)如下,感興趣的朋友可以參考下2013-11-11

