如果我能夠在 JS 中使用 sessionStorage 訪(fǎng)問(wèn)會(huì)話(huà)數(shù)據(jù),無(wú)論它是如何創(chuàng)建的,通過(guò) php 或 AJAX,那么為什么我不能使用 JS 刪除 sessionData?sessionStorage(顧名思義)僅在瀏覽器會(huì)話(huà)期間可用(并在選項(xiàng)卡或窗口關(guān)閉時(shí)被刪除)——然而,它在頁(yè)面重新加載后仍然存在(來(lái)源 DOM 存儲(chǔ)指南 - Mozilla 開(kāi)發(fā)者網(wǎng)絡(luò))此外,如果有人可以建議使用 AJAX 執(zhí)行此操作的方法,我將不勝感激!我正在構(gòu)建一個(gè)用戶(hù)生成的表單生成器并將值保存在$_SESSIONSphp 頁(yè)面上。我正在使用隨機(jī)字母數(shù)字生成器來(lái)創(chuàng)建兩個(gè)標(biāo)識(shí)標(biāo)簽屬性,如果用戶(hù)需要,它們將用于刪除創(chuàng)建的輸入。刪除是使用 vanilla JS 完成的,需要在頁(yè)面加載之前發(fā)生。好的,為了在每次解析表單并將數(shù)據(jù)構(gòu)建到輸入標(biāo)記中時(shí)保存表單數(shù)據(jù)的多次提交,我正在使用 SESSIONS。我在$_SESSIONS數(shù)組內(nèi)設(shè)置使用關(guān)聯(lián)數(shù)組$_SESSION['form'],然后構(gòu)建輸出。我的問(wèn)題是我在 Javascript 中的刪除功能適用于 DOM,但是我想使用 JS 刪除按鈕來(lái)重置$_SESSION['form']['content']['randomly-generated-alphanumeric-number']用戶(hù)創(chuàng)建的輸入的唯一性。最終我將通過(guò)適當(dāng)?shù)?html 實(shí)體運(yùn)行這一切以刪除標(biāo)簽并適當(dāng)?shù)靥砑铀鼈?,現(xiàn)在我只是通過(guò)代碼的應(yīng)用程序測(cè)試功能。請(qǐng)記住,隨機(jī)字符是動(dòng)態(tài)生成的,并通過(guò) php 插入到 HTML 和 SESSIONS 中。這里是vardump($_SESSION['form']['content'])array { ["m2HRvKPdDL"]=> string(313) " <div id="m2HRvKPdDL" class="input-type"> <label>First Name: </label> <input type="text" id="fname" class="input-type" name="first_name"><input type="button" alt="m2HRvKPdDL" id="deleteInput" class="deletInput" value="Delete this field"> <span id="deleteMSG"></span> </div> "}這是創(chuàng)建它$_SESSION并生成輸入標(biāo)記的 PHP 函數(shù): 我在函數(shù)中定義一個(gè)數(shù)組,該數(shù)組最終將保存數(shù)據(jù)以顯示為value和隨機(jī)生成的字符 - > $ran。keyfunction constInputTag($ran){ $inputTitle = $_POST['inputTitle']; $attrTypeSubmit = $_POST['attrTypeSubmit']; $output = []; $output[1] = $ran; $output[0] = ' <div id="'.$output[1].'" class="input-type"> <label>'.$inputTitle.'</label> <input type="'.$_POST['inputType'].'"'; Javascript: 檢查刪除按鈕是否被點(diǎn)擊的前端代碼,創(chuàng)建是/否按鈕,向這些按鈕添加屬性并顯示它們,定位并設(shè)置將用作父 div、按鈕和會(huì)話(huà)標(biāo)識(shí)符的隨機(jī)字符,刪除包含動(dòng)態(tài)創(chuàng)建元素的父 div
Vanilla Javascript 使用關(guān)聯(lián)鍵而不是值刪除 $_SESSION 值
夢(mèng)里花落0921
2022-12-23 15:11:31