台灣最大程式設計社群網站
線上人數
540
 
會員總數:245788
討論主題:189423
歡迎您免費加入會員
討論區列表 >> AJAX / JSON / jQuery >> 二數相乘後再總相加
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
二數相乘後再總相加
價值 : 5 QP  點閱數:1284 回應數:16
樓主

小謝
門外漢
0 2
128 13
發送站內信




上面寫的$ol_price累積相加總金額顯示成功

請問大家
想要改先$ol_price乘ol_quantity的值再累積相加總金額要怎樣改寫呢?
也就是每筆金額乘數量後的值,再累積相加

搜尋相關Tags的文章: [ 累積相加 ] ,
本篇文章發表於2016-07-26 00:28
1樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
不就直接相乘後再相加就好了??

仔細想想你的問題問的對不對。我可能知道你主要是想問什麼。
如:怎麼取xxxxxx值
本篇文章回覆於2016-07-26 10:13
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小謝
檢舉此回應
版主好
問題可能問錯方式了,如版主所說怎麼取xxxx值
目前學到取ol_price的每列值後相加

現想學如何在同一列上的ol_price跟ol_quantity二個欄位值取出來後相乘的總值
再每列的總值相加呢


改成如上後
第一列的相乘是OK的
但第二列以後就出問題了
變成了第二列以後的ol_price值去乘第一列的ol_quantity了

本篇文章回覆於2016-07-26 13:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
你已經使用了jquery的方式。就可以利用其特性來處理對應值
你在第10行採用的是each的特性。也就是針對ol_price來處理。

那如何取得其對應的其它值。
ol_quantity就是在其ol_price的上面。也就是所謂的上一個元素。
所以可以用 $(this).prev().val();來取得值。
如果擔心會取錯值,或是日後可能會有修改的可能性。

那就最好用絕對宣告的方式
$(this).prev("input[name='ol_price[]']").val();

prev代表的是就目前元件的上一個元件。
另再多加一個next指的就是下一個元件。

搭配這樣的方式來取值再來做處理。(數值化什麼的我就不多說了,我看你有做處理)

不過我一般會比較喜歡用父元件往下搜尋值的方式來處理。
這又是另外一個知識了。
本篇文章回覆於2016-07-26 14:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

小謝
檢舉此回應

請問是改成這樣嗎?
改成這樣失敗了,出現NaN
本篇文章回覆於2016-07-26 17:11
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
為何會出現<span style="color: Red;">這東西啊??
你不是在寫javascript嗎??

怎麼會跑出html碼。
這樣會跑就有鬼了。

如果是標記色的話。就當我沒說。

而且你第7行你也沒注意到()不對稱嗎??

善用一下f12的開發者模式吧。它會告訴你哪邊有錯誤。
本篇文章回覆於2016-07-26 18:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

小謝
檢舉此回應

感謝版主的指導
不好意思上一篇是想給版主顯示紅色的字眼來看
正確是這樣
可是仍是NaN
抓不到quantity的值
本篇文章回覆於2016-07-26 18:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
你可以的話。po一下整個原始碼出來。

你也可以在6~7行之間插入
console.log($(this).prev().html());
看看是抓到哪一個元件。
本篇文章回覆於2016-07-27 09:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

小謝
檢舉此回應

感謝版主指導
PO上原資料參考
本篇文章回覆於2016-07-27 11:21
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
作者回應

小謝
檢舉此回應

附上結果圖
本篇文章回覆於2016-07-27 13:01
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
我的媽啊~~~

我現在才知道你為何不po全部的程式碼了。

php+html混著用就算了。
還將html做字串模式輸出.....


你把前端當後端使用了啊。

你在瀏覽器上按f12啟用開發者模式。因該會告訴你錯誤。
你這樣的程式碼我也不太想看了。
會出問題我倒是不會覺得意外。

因為這少了一個引號或是多了一個引號。根本看不太出來。
不利用開發者模式來看的話。這樣直接看跟本無法處理@@"

建議你最好不要用這樣的寫程式方式。這樣你未來一定會找bug找的很痛苦。

至於你的問題,目前這個如果沒實做的話。完全看不出來你的問題在哪。
另外~~把 $('input[name=\"ol_price[]\"]') 改成 $('input[name^=\"ol_price\"]')
試試吧。(最好是將有[]的值。全用^=並去除[]來處理。(ps: ^= 代表符合前段字元元件就算。)
本篇文章回覆於2016-07-27 14:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
作者回應

小謝
檢舉此回應
非常謝謝版主的指導
我是買一本{前端網頁與伺服器專案範例實錄}的書來學習
剛開始也不習慣,看久了就知道這本書的寫法及羅輯運用

覺得跟asp.net的寫法很像就開始學習

原來大家寫程式不是用這種方式寫喔

請問版主有可推薦的書教寫程式及羅輯寫法嗎
因為一般的書都是教個一小段功能跟函數,不知如何運用
本篇文章回覆於2016-07-27 15:34
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
12樓
回應

迷路
捐贈 VP 給 迷路 檢舉此回應
雖然我看過的程式參考書大多都是PHP混HTML,例如

像樓主這麼誇張的寫法還真是第一次看到
感覺像是把版型分離的部分用字串塞進PHP中
如果書上真的是這樣寫,建議扔掉那本書吧
本篇文章回覆於2016-07-28 09:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
13樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
一盤初學者。會學用html+php其實是很正常的事。
因為大部份的書都是這樣子教的。

畢竟要有view的觀念。是中期才需要學習的。
早期學的話。其實也不能說不行。只是要分的清楚。

我用簡單的東西
如以下這兩種php的程式碼



出來的東西都是一樣的沒錯。
但一般你的html編輯器上看到的。
第一個會是有一個div呈現的樣子。
然後上下兩個php

第二個則是只有一個大大的php方塊。完全看不到div的排版。
你想要設計css也很困難

也來說明瀏覽器的解析方面。(其實也不是由瀏覽器,而是由web server解析處理後會送出的html碼

其在瀏覽器接收到的是會如下的東西


這塈甯隻颻n先這樣說明。因為這就是所謂的前端及後端的控制應用。
前端來說,不考量nojs這樣的東西。(先不討論nojs的東西,這又是另外一種技術觀念,但先不要學。免得搞混)
主要是javascript這樣的東西。控制的就是其html產生後的元件。

對於後端來說,它只是幫你來產生好html。再轉交給瀏覽器來處理。
所以後端程式來說,其實只要編譯完成後。就已經沒它的事了。你也無法再叫他工作了。(ajax雖然可以,但其實這是一種再請求的技術了)

所以~~~js放在php內用字串輸出是一件很笨的事。因為可以說沒有那種必要。(雖然的確可以這樣做也沒錯)
我曾看過有人直接在php內直接用
echo "<script>local.href='XXXX.php'</script>";

這樣的方式來做轉頁。這是一件很不好的行為。(但的確可以運行也沒錯)

程式寫法有非常多種。也有很多種方式可以達到。
重點是考量之後的維護及讀碼的方便性。這些是都要考量的。

再講白一點的話。如果你今天的html全用php的echo來做輸出。
如果以後你有前端開發人員。他一定會幹死你的。
因為他完全不能用。

等於是說,他做成html設計出來的東西。還得要透過你寫進去程式堙C
這是很不好的行為。

但如果你說讓前端去改你的程式。那這樣的行為更是不好。
千萬不要讓前端人員來碰你的程式。那是會死人的行為。

講到這堙C我也不知道如何跟你做基本的教學。我也只能告訴你一些觀念上的東西。
其它的還是要你自行去研究才行了。
本篇文章回覆於2016-07-29 18:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
14樓
作者回應

小謝
檢舉此回應
謝謝版主的指導
本篇文章回覆於2016-07-29 23:13
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
15樓
作者回應

小謝
檢舉此回應
再請教版主

單純找自己的值,這個方式可以找的到bill值

改成版主教的找下欄的值方法next()或純對位置next("input[name='fname']")都是失敗無法找到值




請問版主指導如何修改
本篇文章回覆於2016-07-29 23:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   

回覆
如要回應,請先登入.