locked
como pegar url de item da lista para abrir em pop up RRS feed

  • Pergunta

  • pessoal como consigo pegar a url de um item da lista como por exemplo Edit item, mais para abrir em um pop up.
    sei que existe este link 
    http://win-2jjus8ii3e3/Lists/Helpdesk%20Initiation/EditForm.aspx?ID=28
    mais so que não abri num pop up, como acontece quando clicamos em Edit item.
    qual é o link para abrir em um pop up?


    • Editado desabi sexta-feira, 6 de janeiro de 2012 10:16
    sexta-feira, 6 de janeiro de 2012 09:36

Respostas

  • andre ja resolvi o meu problema, continuei com a ideia que eu tinha. o meu problema era fazer a tal refresh na minha item da lista. e consegui com o codigo abaixo:

    string url_actual = Request.RawUrl.ToString();
    Response.Redirect(url_actual); 

    so que com isso fica num ciclo infinito e coloquei um if para resolver o problema. para outras pessoas aqui esta a ideia, mais um trecho do meu codigo. (acrescentei algo no fim da url para a proxima vez, saber que ja entrou uma vez)

    if (!IsPostBack)

                {

                    string fim_url = Request.QueryString["crescentar"];

                    string url_actual = Request.RawUrl.ToString();

                    string mais = "crescentar=invalido";

                    if (fim_url != "invalido")

                        Response.Redirect(url_actual + "&" + mais);               

                }   

     

    • Marcado como Resposta desabi sexta-feira, 6 de janeiro de 2012 18:52
    sexta-feira, 6 de janeiro de 2012 18:51

Todas as Respostas

  • Se for sharePoint 2010 podes fazer algo assim:

    Em Javascript:

    function SiteRequest()
    {
    //Using a generic object.
    var options = {
        title: "My Item",
        showMaximized: true,
        url: "http://win-2jjus8ii3e3/Lists/Helpdesk%20Initiation/EditForm.aspx?ID=28" };

    SP.UI.ModalDialog.showModalDialog(options);
    }

    Em Html adicionas isto

    <a href="#" onclick="SiteRequest();" >O meu item....</a>

    tambem podes fazer <a href="#" onclick="Javascript:var options={title: 'My Item',showMaximized: true, url: 'http://win-2jjus8ii3e3/Lists/Helpdesk%20Initiation/EditForm.aspx?ID=28' };SP.UI.ModalDialog.showModalDialog(options);" >O meu item....</a>


    André Lage Microsoft SharePoint, CRM Consultant
    Blog:http://aaclage.blogspot.com
    Codeplex:http://spupload.codeplex.com/http://simplecamlsearch.codeplex.com/
    sexta-feira, 6 de janeiro de 2012 10:35
    Moderador
  • perfeito andré,

    mais como faço para executar este codigo no c#.

    sexta-feira, 6 de janeiro de 2012 11:30
  • Estou confuso, o que pretendes fazer?
    André Lage Microsoft SharePoint, CRM Consultant
    Blog:http://aaclage.blogspot.com
    Codeplex:http://spupload.codeplex.com/http://simplecamlsearch.codeplex.com/
    sexta-feira, 6 de janeiro de 2012 12:11
    Moderador
  • andré, estou querendo ocultar campos de uma lista de acordo com permissao. ex: utilizador A pode ver campo x,y; utilizador B pode ver r,p.

    para isso criei um web part e adicionei ele aqui: 
              - http://servidor/Lists/minhalista/NewForm.aspx?ToolPaneView=2 .

    minha função que oculta campo

    ********************************

    public void ocultar_campos(string lista, string campo)
                    {
                        using (SPSite site = new SPSite(SPContext.Current.Site.Url))
                        {
                            using (SPWeb web = site.AllWebs[SPContext.Current.Web.ServerRelativeUrl])
                            {
                                web.AllowUnsafeUpdates = true;
                                SPList ListaA = web.Lists.TryGetList(lista);
                                if (ListaA != null)
                                {
                                    SPField CampoA = ListaA.Fields[campo];
                                    CampoA.ShowInNewForm = false;                       
                                    CampoA.ShowInEditForm = false;
                                    CampoA.ShowInDisplayForm = false;
                                    CampoA.Update();
                                    web.AllowUnsafeUpdates = false;
                                }
                            }
                        }

     

                    }

    *****************************************************

    IMPORTANTE:
       minha função so oculta correctamente apos o 2º click. dai estou querendo fazer um response.redirect(), para a minha propria pagina (ja fiz um teste banal), da para ver que ele vai comporta como eu quero.  
    meu response.redirect vai ficar dentro do diferente ISPOSTBACK

           *por causa disso preciso colocar o link da janela pop up dentro do meu response.redirect

    ps: também tenho outra função para mostrar campo (também comporta correctamente apos 2º click).

     

    fui claro?


    • Editado desabi sexta-feira, 6 de janeiro de 2012 12:47
    sexta-feira, 6 de janeiro de 2012 12:42
  • Bolas mas isso vai ficar complexo e + pouco eficiente....

    Nao seria melhor criar Grupos com vista das listas definidas para esse grupos, sempre que precises gerir muda o user do grupo....

    Se precisares podes utilizar as webpart das listas e escolhes uma lista e utilizas as audiencia para gerir o acesso as webPart com as vistas definidas, sera muito mais simples...


    André Lage Microsoft SharePoint, CRM Consultant
    Blog:http://aaclage.blogspot.com
    Codeplex:http://spupload.codeplex.com/http://simplecamlsearch.codeplex.com/
    sexta-feira, 6 de janeiro de 2012 14:07
    Moderador
  • Nao seria melhor criar Grupos com vista das listas definidas para esse grupos, sempre que precises gerir muda o user do grupo....

    mais como trabalhar com "grupos com vistas das listas". nunca fiz nada desse jeito. alguns link ou explicação, para saber por onde começar?  
    sexta-feira, 6 de janeiro de 2012 16:00
  • andre ja resolvi o meu problema, continuei com a ideia que eu tinha. o meu problema era fazer a tal refresh na minha item da lista. e consegui com o codigo abaixo:

    string url_actual = Request.RawUrl.ToString();
    Response.Redirect(url_actual); 

    so que com isso fica num ciclo infinito e coloquei um if para resolver o problema. para outras pessoas aqui esta a ideia, mais um trecho do meu codigo. (acrescentei algo no fim da url para a proxima vez, saber que ja entrou uma vez)

    if (!IsPostBack)

                {

                    string fim_url = Request.QueryString["crescentar"];

                    string url_actual = Request.RawUrl.ToString();

                    string mais = "crescentar=invalido";

                    if (fim_url != "invalido")

                        Response.Redirect(url_actual + "&" + mais);               

                }   

     

    • Marcado como Resposta desabi sexta-feira, 6 de janeiro de 2012 18:52
    sexta-feira, 6 de janeiro de 2012 18:51