簡體   English   中英

如何將數組從javascript傳遞到php

[英]How to pass an array from javascript to php

它應該如何工作的屏幕截圖(抱歉語言)

所以我被要求重新制作一些注冊表。 它的工作方式是,解釋器在第一個選擇框中選擇 X 種語言。 然后根據語言的選擇,用戶必須指定他們可以從哪些語言翻譯/翻譯成哪些語言。

我想將此數據存儲在一個鍵/值數組中,鍵是“LanguageFrom”,值是另一個數組,“LanguagesTo”。 這就是我解決這個問題的方法:

function btnTest() {
            var fromArray = $('.freelancerLanguagesFrom').map(function() {
                return $(this).val();
            }).get();

            var toArray = $('.freelancerLanguagesTo').map(function() {
                return $(this).val();
            }).get();

            var tempArray = {};
            tempArray[fromArray] = toArray;
}

正在使用 html 部分中的“onclick”函數調用此方法。 用戶應該在第一個框中指定他可以為每種所選語言翻譯的語言,我知道這可能不是理想的方法,但我仍然是一個缺乏經驗的開發人員,我很想聽聽您的看法在另一種方法上。 現在我的問題來了:

1)我如何做到這樣數組不會在每次單擊按鈕時覆蓋現有數組,而只是添加到數組中?

2) 我如何在服務器端 (php) 處理這個數組,以便我可以將值存儲在我的數據庫中?

3)是否可以跳過用戶在選擇每種語言后必須按保存(寶石)按鈕的流程?

編輯:問題 1 和 3 現已解決,我唯一的問題是在 php 端訪問我在 js 中創建的數組

1) tempArray 只存在於 btnTest() 函數的范圍內。 在外部(在全局范圍內)聲明它,將其初始化為 {} 並且不要在每次單擊按鈕時重置它。 獲取 fromArray 變量的方式可能需要進行一些調整,具體取決於“from”列表是否可以接受多項選擇。

2) Ajax可能會有所幫助。 創建一個 php 端點來接收請求並使用 ajax 調用它。 您可以使用JSON 處理數組。 使用 JSON.stringify(tempArray) 發送您的數據並在您的 php 腳本中使用 json_decode() 讀取它,或者簡單地將請求標頭設置為“application/json”以自動為您完成。

3)我個人不會自動化這個過程。 假設我有 4 種語言,意大利語、英語、法語和中文。

我選擇了我可以處理的理想語言狀態:

意大利語 -> 英語、法語

但我也知道如何將法語翻譯成意大利語,所以我在源列表中單擊法語,然后我得到

法語 -> 英語

對我來說,這是一種不受歡迎的狀態,因為我不知道該怎么做。 特別是如果我要選擇多種語言,我會在我想保存的 2 個狀態之間得到無限數量的我不想保存的狀態。

如果您仍然想這樣做,您需要使用 onchange 事件將偶數偵聽器從按鈕移動到列表中。

如果您還沒有,我還建議您通過jQuery 進行事件綁定。

希望這有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM