小编use*_*633的帖子

使用AJAX时检查会话超时

我有一个ColdFusion页面,用户可以打开一个模态并查看有关一行数据的更多信息.但是,如果用户在页面上的时间超过默认的20分钟会话超时,则会抛出错误,因为它正在查找会话变量但无法找到它们.我理解如何使用服务器端代码捕获这个,但我似乎无法通过AJAX调用来成功确定会话是否仍然存在.

这是当用户点击按钮打开模态时触发的AJAX代码.基本上它正在检查会话是否与CFC中的函数一起存在.我的问题是它总是返回'有效'.

//this checks if the session is expired
function checkSessionExists() {
    $.ajax({
        //this is the that has function
        url: 'components/Admin.cfc',

        //POST method is used
        type: "POST",
        //pass the data        
        data: {
            method: "checkSessionExists"
            },
        async:   false,
        success: function(response) {

            //$('#loading').hide();
            var obj = $.trim(response);

            if (obj == 'expired') { //it's never expired
                alert('Sorry, your session has expired.')
                window.location.href = "logout.cfm";
                return false;
            }

            else{

            }
        },
        error: function(jqXHR, exception) {
            alert('Uncaught Error.\n' + jqXHR.responseText);   
        }
    });
return false;
} …
Run Code Online (Sandbox Code Playgroud)

ajax coldfusion session jquery

7
推荐指数
1
解决办法
6757
查看次数

如何动态循环遍历结构数组

我需要从结构数组中创建一个查询对象.该阵列有大约200个键,阵列内部的结构在名称,大小和深度上有所不同.这是一个节点的样子:

我需要循环并创建查询对象的结构数组

我已经让它适用于数组[#i] .adGroupId和数组[#i#].userStatus但我需要在将结构值添加到查询之前检查它是否存在.criterion.text例如并不总是在结构中,所以我需要检查,但不知道如何.这是迄今为止的代码,但它总是跳过criterion.text和bids.maxCpc.amount.microAmount.

<cfset vColumns = "AdGroupID,KeywordText,Status,MaxCPC" />
<cfset vColumnValue = "AdGroupID,criterion.text,userStatus,bids.maxCPC" />
<cfset loopnum = 1>
<cfset myquery = QueryNew(vColumns) >
<cfloop array="#aKeywordsAll#" index="i">
    <cfset temp = QueryAddRow(myquery, 1)>
    <cfset loopNum2 = 1>
    <cfloop list="#vColumnValue#" index="j">                
        <cfif structKeyExists(aKeywordsAll[loopnum],j)>
            <cfset QuerySetCell(myquery, listGetAt(vColumns, loopNum2), aKeywordsAll[loopnum][j])>
        <cfelse>
            <cfset QuerySetCell(myquery, listGetAt(vColumns, loopNum2), "test")>
        </cfif>
        <cfset loopNum2++ />
    </cfloop>
    <cfset loopnum++ />
</cfloop>
Run Code Online (Sandbox Code Playgroud)

这是创建的查询对象.它说"测试",但希望它能给出值:

查询对象是从我疯狂的循环中创建的

coldfusion coldfusion-9

2
推荐指数
1
解决办法
957
查看次数

如何获取在C#中插入的行的ID

我有一个完美的插入工作,但需要获取它刚刚插入的行的值.不知道我怎么做到这一点.试过一些东西......没用.这是我的INSERT:

//method to insert data
private void insertNewProject()
{
    using (dbPSREntities5 context = new dbPSREntities5())
    {
        //Create a new instance of the tbProject object
        tbProject proj = new tbProject {
            //Add new values to each fields
            ProjectContactInfo = txtContactPhone.Text,
            refDepartmentID = Convert.ToInt32(ddlDepartments.SelectedValue)
        };

       context.tbProjects.AddObject(proj);

       context.SaveChanges();

       id = (int)command.ExecuteScalar; <--- something like this but this doesn't work.
    }
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc entity-framework asp.net-mvc-4

2
推荐指数
1
解决办法
143
查看次数

aspx页面内的内联c#代码

我想根据userName变量显示不同的下拉选项,但不知道如何执行此操作.这是代码:

<form id="frmViewRequest" runat="server">
    <div class="widget-content">

       <div class="padd"><div class="row">
          <div class="col-md-2">
             <% if (userName == "jpublic"){
                <asp:DropDownList class="form-control" runat="server" AutoPostBack="true" ID="ddlChangeStatus">
                <asp:ListItem Text="Under Review" value="1" />
                </asp:DropDownList>
              }
              else{
                <asp:DropDownList class="form-control" runat="server" AutoPostBack="true" ID="ddlChangeStatus">
                <asp:ListItem Text="Under Review" value="1" />
                <asp:ListItem Text="Approved" value="2" /> 
                <asp:ListItem Text="Rejected" value="3" /> 
                <asp:ListItem Text="Logged" value="4" /> 
                <asp:ListItem Text="Completed" value="5" /> 
               </asp:DropDownList>
               }
               %>
Run Code Online (Sandbox Code Playgroud)

这可能吗?如果是这样,我将如何根据userName显示不同的ListItem?谢谢!

c# asp.net

1
推荐指数
1
解决办法
623
查看次数

使用LINQ的WHERE子句

下面的代码将选择表中的所有行,但我只想选择传递给方法的行的id.我已经尝试了多种方式,现在开始新鲜,看看我是否能让它发挥作用.任何帮助表示赞赏.

这是我的代码:

 [WebMethod]
public static string getProjectByID(int id)
{
    using (dbPSREntities4 myEntities = new dbPSREntities4())
    {
        var thisProject = myEntities.tbProjects.ToList();

        JavaScriptSerializer serializer = new JavaScriptSerializer();
        var json = serializer.Serialize(thisProject);

        return json;
    }
}
Run Code Online (Sandbox Code Playgroud)

c# linq asp.net

-2
推荐指数
1
解决办法
95
查看次数