gpt4 book ai didi

c# - 使用/jquery mobile、c# 和 asp.net 延迟加载 SELECT 元素选项

转载 作者:行者123 更新时间:2023-11-30 15:08:45 25 4
gpt4 key购买 nike

我的一个 jQuery Mobile 页面上有一个 SELECT 元素,它有很多可能的值。显然,在页面加载时加载所有选项会在手机上引发性能问题。 “按需”加载项目的好方法是什么?

我需要的一个示例是 Android 市场如何加载应用程序列表:最初加载 x 个项目,然后在您滚动到选项底部后加载 x 个项目,然后再加载 x 个...等等上)。

我正在使用 C#/ASP.NET(Razor 语法)来实现 jQuery Mobile。

最佳答案

这是我的解决方案。这个想法是实现一种类似于 Twitter 的分页,并且您应该从一开始就呈现一些选择。

<div data-role="page">

<div data-role="header">
<h1>Page Title</h1>
</div><!-- /header -->

<div data-role="content">
<p>Page content goes here.</p>

<div data-role="fieldcontain">
<label for="select-choice-1" class="select">Choose shipping method:</label>
<select name="select-choice-1" id="select-choice-1">
<option value="standard">Standard: 7 day</option>
<option value="rush">Rush: 3 days</option>
<option value="express">Express: next day</option>
<option value="overnight">Overnight</option>
<option value="-1">More...</option>
</select>
</div>

</div><!-- /content -->

<div data-role="footer">
<h4>Page Footer</h4>
</div><!-- /footer -->
</div><!-- /page -->

然后将一些处理程序挂接到更多选项

<script type="text/javascript">
$(document).bind("pageshow", function(){
bindMore();
});

function bindMore(){
// The rendered select menu will add "-menu" to the select id
$("#select-choice-1-menu li").last().click(function(e){handleMore(this, e)});
}

function handleMore(source, e){

e.stopPropagation();

var $this = $(source);

$this.unbind();

$this.find("a").text("Loading...");

// Get more results
$.ajax({
url: "test.js",
dataType: "script",
success: function(data){
$(eval(data)).each(function(){

// Add options to underlaying select
$("#select-choice-1 option").last()
.before($("<option></option>")
.attr("value", this.value)
.text(this.text));

});

// Refresh the selectmenu
$('#select-choice-1').selectmenu('refresh');

// Rebind the More button
bindMore();

}
});
}
</script>

Test.js 包含这个:

[
{"value": "1", "text": "1"},
{"value": "2", "text": "2"},
{"value": "3", "text": "3"}
]

关于c# - 使用/jquery mobile、c# 和 asp.net 延迟加载 SELECT 元素选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5185112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com