Rápido e fácil: Usar jQuery para valor do definir um campo de texto em um formulário do SharePoint

Comecei a brincar com jQuery ontem. Estou querendo fazer isso há muito tempo, desde que Paul Grenier comecei a escrever sua série sobre jQuery para usuários finais no Venerável www.endusersharepoint.com Web site. Como usá-lo, Espero acrescentar que uma série de "Rápida e fácil" posts como este. Este post descreve como definir valor um campo de texto conhecido a qualquer coisa que você quer.

Neste cenário, Eu criei uma lista personalizada, cuja "nova" forma olha como mostrado:

image

Este é o novo formulário para uma lista personalizada com a coluna de título padrão e duas colunas de lista (não as colunas de site; Eu não acho que ele deve fazer toda a diferença).

O objetivo é atribuir um valor arbitrário para o campo, "DefaultMeFieldNoSpaces" (Você pode dizer que eu sou um pouco de um covarde com a coisa "sem espaços" acontecendo, mas combiná-lo no final deste artigo).

Este pouco de jQuery, funcionado para mim:

<script type ="text/javascript">

  $(função() {

    $(' entrada[título = DefaultMeFieldNoSpaces]').attr(
        {valor: ' Você está em um labirinto sinuoso de passagens, todos iguais.'});

  });

</script>

Pelo que entendi este pouco de jQuery está dizendo, "me encontrar qualquer entrada tag cujo título = DefaultMeFieldNoSpaces. Em seguida, conjunto todos os seus valores de uma famosa frase de um antigo jogo de computador."

Uma vez que só haverá um campo no formulário com um título igual ao "DefaultMeFieldNoSpaces" Estamos garantida de atribuir um valor ao campo e nenhum outro.

Que tal um campo cujo nome tiver espaços? É quase a mesma coisa:

<script type ="text/javascript">

  $(função() {
     $(' entrada[título = atribuir o campo com o espaço]').attr(
        {valor: ' Você está em um labirinto sinuoso de passagens, todos iguais.'});

  });

</script>

Acho que essa é uma abordagem bastante segura, significa que poderemos encontrar os campos que queremos e só o que queremos.. Se você olhar para o SharePoint de HTML está nos dando., é meio confuso:

<entrada
nome= "ctl00$ m$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ TextField"
tipo= "texto"
MaxLength= "255"
ID= "ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField"
título= "DefaultMeFieldNoSpaces"
Classe= "ms-long"
/>

"título" destaca-se como um atributo reconhecível e espero que única para nos ajudar a identificar a coluna específica ao qual queremos atribuir o nosso valor arbitrário.

Este é um conceito fundamental. Configuração de um campo de forma arbitrária, assim não vai ganhar nenhum prêmio. No entanto, Se nós queremos fazer coisas de nível de formulário mais interessantes (que todos nós queremos sempre fazer, É claro, logo depois que terminar de lavar a louça), como alterar o valor de "b campo" automaticamente com base no valor do "campo um", Nós (EU) necessidade de aprender essas coisas.

Acho que nossa melhor chance de obter um valor útil real aqui é via o título, pelo menos para os campos de texto. Pode haver um melhor, abordagem mais confiável. Se eu encontrá-lo, Vou atualizar este post. Se você conhece uma maneira melhor, por favor, deixe um comentário.</fim>

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

5 pensamentos "Rápido e fácil: Usar jQuery para valor do definir um campo de texto em um formulário do SharePoint

  1. Paul Galvin

    Oskar, Ainda não tenho uma abordagem como porque eu só comecei a usá-lo para brincar. Como eu começar a usá-lo em um ambiente de produção, que definitivamente vou escrever sobre minha experiência.

    Obrigado pelo link para spjqueryfield.

    Resposta
  2. Oskar Austegard

    Paulo, o que é a sua abordagem para injetar o javascript na página de edição? Fazê-lo em um destacável, forma simples é o bit tricky, tanto quanto eu estou preocupado. Você realmente não deve ter que criar um formulário personalizado sempre que… Eu acho que isso, http://spjqueryfield.codeplex.com/ , é um bom começo. Implantá-lo de uma vez, em seguida, reutilizar conforme necessário…

    Resposta

Deixar uma resposta

seu endereço de e-mail não será publicado. Campos obrigatórios são marcados *