我有一个问题,因为当我从我的基地重新加载数据时,我检查是否有一些值应该显示我的div。
当满足该标准时(我选择了应该显示div的值)它可以工作。问题是当我想要重新加载已保存的数据时。
我的功能在前面
<script>
function showDivOrHide(dd_status) {
if (dd_status.value == 'Met criteria') {
$('#someDiv').show(300);
}
else {
$('#someDiv').hide(300);
}
}
</script>
我在PageLoad中的代码:
protected void Page_Load(object sender, EventArgs e)
{
....
string status = customer["STATUS"].ToString();
if (!string.IsNullOrEmpty(status)){
dd_status.SelectedValue = status;
if(status.Equals("Met criteria")){
Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "showDivOrHide(" + dd_status + ")", true);
}
....
}
那么如何从PageLoad加载JS函数?有可能吗?
答案 0 :(得分:0)
如果它是一个选项,我建议您使用Webservices(通用处理程序)。 然后,您可以将您需要评估的值传递给此Webserivce。
function validateSelection(customerStatus) {
$.ajax({
dataType: "json",
url: "url/to/webservice" + "?status=" + customerStatus,
success: function (data) {
var status = data.status;
if(status === true){
// show your div
} else {
// do smth else
}
},
error: function (jqXHR, textStatus, errorThrown) {
// error handling
}
});
}
您的Web服务代码可以包含您的验证,只需将数据作为JSON返回:
public void ProcessRequest(HttpContext context)
{
if(dd_status == context.Request.QueryString["status"]){
context.Response.ContentType = "text/plain";
context.Response.Write("{ \"status\": true }");
} else {
context.Response.ContentType = "text/plain";
context.Response.Write("{ \"status\": false}");
}
}
这是我理解你的问题的程度。