我正在尝试为我的jQuery移动应用程序添加"更改日志".如果出现错误,用户应该具备查看错误的能力.因此我实现了一个带有textarea的弹出窗口(见下面的代码)
<!-- DIALOG Start-->
<div data-role="popup" id="popupLog" data-overlay-theme="a" data-theme="b" style="max-width:400px;" class="ui-corner-all">
<div data-role="header" data-theme="b" class="ui-corner-top">
<h1>Logg-Einträge:</h1>
</div>
<div data-role="none" data-theme="b" class="ui-corner-bottom ui-content">
<textarea style="height: 120px; max-height: 120px" readonly="readonly" data-mini="true" cols="40" rows="8" id="popupTextArea"></textarea>
<a href="#" data-role="button" data-inline="true" id="btn_textArea" data-rel="back" data-theme="c">OK</a>
</div>
</div>
<!-- DIALOG End-->
Run Code Online (Sandbox Code Playgroud)
此popUp充满了数据,并在单击特定按钮时打开:
$('#showLog').click(function() {
$("#popupDialog").popup("close");
// populate the textArea with the text
$("#popupTextArea").text(sessionStorage.getItem("logStack"));
// open popUp after a specific time
setTimeout( function(){$('#popupLog').popup('open');
}, 1000 );
});
Run Code Online (Sandbox Code Playgroud)
到目前为止,所有功能都正常运行.问题是:当用户在textarea中向下滚动时,关闭popUp并重新打开它,滚动条的位置仍然相同 - 例如用户向下滚动到底部,关闭popUp并重新打开它 - popUp将位于textarea agein的底部.但是当我再次打开popUp时,我想总是把它放在textarea的顶端.为了实现这一点,我在这个popUp中实现了一个"Ok"-Button,如下所示,它关闭popUp并将scrollingTop设置为0:
$('#btn_textArea').click(function() {
// Setting position …Run Code Online (Sandbox Code Playgroud) 我试图记住jquery选择中所选选项的描述.不幸的是,我不能以编程方式选择想要的选项.
这里有一些更多细节:HTML:
<div style="width: 140px">
<label for="select-choice-a" class="select">Lagerort: </label>
<select id="sel_stockIDs">
<option disabled="disabled">Lagerort</option>
</select>
</div>
Run Code Online (Sandbox Code Playgroud)
JS(在ajax调用之后插入所有有效选项):
for (var j = 0; j < paramsParsed.length; j++) {
// paramsParsed is {0001, 0002, 0003 etc.}
loadedStocks[j] = '<option value=' + (j+1) + '>' + paramsParsed[j] + '</option>';
$("#sel_stockIDs").append(loadedStocks[j]);
}
Run Code Online (Sandbox Code Playgroud)
还将一个Listener设置为select,用于存储用户决策JS:
$('#sel_stockIDs').change(function() {
sessionStorage.setItem("stockId", $('#sel_stockIDs option:selected').text());
});
Run Code Online (Sandbox Code Playgroud)
模样":

用户选择有效的"Lagerort"选项(stockId)后,将打开下一个HTML站点.用户的决定(选项文本和选项值)保存在localStorage中.返回此页面时,所做出的决定仍应是选定的选项.例如,用户选择Lagerort"0001",更改站点并返回 - 所选选项仍应为"0001".因此,我再次加载股票(这很好)
for (var j = 0; j < paramsParsed.length; j++) {
// paramsParsed is {0001, 0002, 0003 etc.}
loadedStocks[j] = '<option value=' + …Run Code Online (Sandbox Code Playgroud)