我的頭即將爆炸。我無法按照我想要的方式工作,我似乎無法找出問題所在。iOS sessionStorage and form submits
我有一個表格,我需要使用AJAX進行處理。
但之前我這樣做,我想保存在window.sessionStorage
。
功能必須跨設備工作,並且我在iOS上遇到問題。
有很多關於這個問題的stackoverflow和谷歌問題,各種修復。但他們沒有一個人似乎爲我工作。
我有這樣的形式:
<form role="form" id="searchForm" data-method="search" action="" onsubmit="return doStuff('search')" data-ajax="false">
<div class="form-group">
<input type="search" id="search" name="s" class="form-control" placeholder="Search...">
<span class="help-block"><small>Search by partnumber, suppler or free text</small></span>
</div>
<button type="submit" data-ajax="false" class="btn btn-block btn-warning">Search</button>
</form>
現在,提交表單時,它通過在大約200線功能運行時,我已經將範圍縮小到代碼中斷。
就在這裏:
sessionStorage.last = search;
return false;
我 「已經從localStorage
去sessionStorage
的希望,可能會解決這個問題,它沒有
我已經試過了‘正確’的方式來設置與此變量sessionStorage.setItem('last', 'search')
但沒有幫助。
無論我做什麼,表單仍在提交。 如果我之前sessionStorage
它工作正常,並停止窗體。
它適用於臺式機和Android精品,但它在iOS設備上misserably失敗
調試我已經試過:
console.log(sessionStorage.last) returns null
console.log(typeof sessionStorage) returns object
console.log(sessionStorage.last = 'foo') returns foo
如果你需要更多的代碼/需要我去嘗試任何事情,請告訴我!
我已經標記你的答案是正確的。 我發現我的老闆(測試網站的那個人)「不小心」穿上了隱私瀏覽功能,這會阻止localstorage和sessionstorage保存任何內容。 – Caweren
大聲笑很好!很高興它解決了。 –