This is a migrated thread and some comments may be shown as answers.

Can't Change Tabs

2 Answers 64 Views
UI for ASP.NET AJAX in ASP.NET MVC
This is a migrated thread and some comments may be shown as answers.
Aaron
Top achievements
Rank 1
Aaron asked on 21 Aug 2013, 12:15 AM
I am working on a helpdesk solution for tracking issues within tests, candidates doing the tests have information stored against sessions.
When the page loads, it loads in a manner that depends on whether a ticket has already been created.
One of the parts of the page is a radtabstrip and multi page.
The problem is that when a ticket is being created, the attendant cannot switch tabs. The radtabstrip seems to do nothing.
However when a ticket that has been created is reloaded for editing, the attendant can switch tabs.
I have set causesValidation=false within the page, and I can see no way in which one loads significantly enough from the other for it to cause a problem.

Does anyone have any ideas? I imagine its one of those silly, "ohh I didn't know that" kind of things", any help is appreciated :D

Here is my code-behind
loadDDLs();
if (Request["Ticket"] != "0")// if a ticket exists
{
    var objRec = objDb.QuerySingle("Query removed for your sake");
    loadCommonFields(objRec);
 
 
    ///This block should cause no problems
    ///---------------------------------
    txtTicketNum.Text = objRec.TicketID.ToString();
    txtFaultDescription.Text = objRec.FaultDescription;
    txtNotes.Text = objRec.Notes;
    txtLastAction.Text = objRec.LastActioned.ToString();
    txtDateLogged.Text = objRec.DateLogged.ToString();
    txtLoggedBy.Text = objRec.LoggerName;
    txtCampaignDescription.Text = objRec.CampaignDescription;
    lblLoggedByID.Text = objRec.LoggerID.ToString();
    lblLoggedByID.Visible = false;
 
    setDDLs(objRec);
    setDDLs2(objRec, objDb);
    if (objRec.SessionID != null)
    {
        txtSessionID.Text = objRec.SessionID;
        m_strID = objRec.SessionID;
        loadCurrentStatus(objDb);
        ddlCompany.Enabled = false;
        ddlCampaign.Enabled = false;
        txtInitLastAccess.Text = objRec.im;
        initModule.Visible = true;
        initStatus.Visible = true;
        txtInitModuleStatus.Text = objRec.il.ToString();
    }
}
else
{
    lblLoggedByID.Text = objUser.UserID.ToString();
    lblLoggedByID.Visible = false;
    txtLoggedBy.Text = objUser.DisplayName;
    txtDateLogged.Text = DateTime.Now.ToString();
    txtLastAction.Text = "No Prior Action";
 
    if (Request["ID"] == "0")
    {
        //  This section is used if there is no session at all, not a concern so I truncated this section
    }
    else
    {
 
        if (m_strID == null)
            m_strID = Request["ID"];
 
        var objRec = objDb.QuerySingle("Query removed for your sake");
        var objModPage = objDb.QuerySingle("Query removed for your sake");
        if (objModPage != null)
        {
            lblModuleID.Text = objModPage.moduleID.ToString();
            txtModuleName.Text = objModPage.Name;
            lblPageNum.Text = objModPage.CurrentPage;
            rowModule.Visible = true;
            rowPageNum.Visible = true;
        }
        txtCampaignDescription.Text = objRec.CnDn;
        txtStatus.Text = objRec.StatusName;
        txtSessionID.Text = Request["ID"];
        m_strStatus = objRec.Status;
        ddlCompany.Enabled = false;
        ddlCampaign.Enabled = false;
        loadCurrentStatus(objDb);
        loadCommonFields(objRec);
        setDDLs(objRec);
    }
}
:
Here is what I deem to be the relevant aspx code
<telerik:RadTabStrip ID="RadTabStrip" runat="server" MultiPageID="RadMultiPage" >
      <Tabs>
          <telerik:RadTab causesvalidation="false" runat="server" PageViewID="Status" ID="StatusTab"
             Text="<%$ Resources:Platform, Status %>">
          </telerik:RadTab>
          <telerik:RadTab causesvalidation="false" runat="server" ID="ProgressTab" PageViewID="Progress"
              Text="<%$ Resources:Platform, Progress %>">
          </telerik:RadTab>
          <telerik:RadTab causesvalidation="false" runat="server" ID="NotesTab" PageViewID="Notes"
              Text="<%$ Resources:Platform, Notes %>">
          </telerik:RadTab>
      </Tabs>
  </telerik:RadTabStrip>

2 Answers, 1 is accepted

Sort by
0
Aaron
Top achievements
Rank 1
answered on 21 Aug 2013, 12:55 AM
Just as an update, I had discovered that when I enter text into a specific text box, it works. I'll keep you posted as to what I discover there.
0
Aaron
Top achievements
Rank 1
answered on 21 Aug 2013, 01:43 AM
While I'm not sure what caused the peculiar mechanics of this problem, it was dealt with by setting the radtabstrip attribute causesvalidation to false. I'm not sure how the validation of an unrelated textbox could produce the effect that was found, but this removed it.
Tags
UI for ASP.NET AJAX in ASP.NET MVC
Asked by
Aaron
Top achievements
Rank 1
Answers by
Aaron
Top achievements
Rank 1
Share this question
or