Ir para conteúdo
Fórum Script Brasil
  • 0

Passando dados via Post com CustomForms


Clocks

Pergunta

Pessoal, estou trabalhando com um formulário onde o usuário seleciona opções que são populadas conforme o código abaixo:

<div class="custom_select relative">
<div class="select_title type_2 r_corners relative color_dark mw_0">Finalidade</div>
<ul class="select_list d_none"></ul>
<select name="finalidade" id="finalidade">
<?php
do {  
?>
<option value="<?php echo $row_lista_finalidades['id_finalidade']?>"><?php echo $row_lista_finalidades['nm_finalidade']?>
</option>
														  
</select>
</div>

Até este ponto tudo normal, a página exibe as opções, ao inspecionar o elemento os "values" estão preenchidos com ID correto

Porém quando envio o formulário ele retorna Notice: Undefined index: finalidade in

Estou utilizando um javascript que encontrei para personalizar o select, e pude notar que o erro só acontece quando o script é utilizado. Se desabilitar e trabalhar com "select" e "option" normal funciona perfeitamente. Segue abaixo a função do script

// custom select

	(function(){

		$('.custom_select').each(function(){
			var list = $(this).children('ul'),
				select = $(this).find('select'),
				title = $(this).find('.select_title');
			title.css('min-width',title.outerWidth());

			// select items to list items

			if($(this).find('[data-filter]').length){
				for(var i = 0,len = select.children('option').length;i < len;i++){
					list.append('<li data-filter="'+select.children('option').eq(i).data('filter')+'" class="tr_delay_hover">'+select.children('option').eq(i).v()+'</li>')
				}
			}
			else{
				for(var i = 0,len = select.children('option').length;i < len;i++){
					list.append('<li class="tr_delay_hover">'+select.children('option').eq(i).text()+'</li>')
				}
			}
			select.hide();

			// open list
			
			title.on('click',function(){
				list.slideToggle(400);
				$(this).toggleClass('active');
			});

			// selected option

			list.on('click','li',function(){
				var val = $(this).text();
				title.text(val);
				list.slideUp(400);
				select.val(val);
				title.toggleClass('active');
			});

		});

	})(); 

Como podem notar a função é acionada quando temos a classe custom-select

Sou iniciante em Java, e na primeira analise, pelo que entendi, o script tenta passar os valores do "Texto" no select e não os "values"

Alterei no PHP a seguinte linha

<option value="<?php echo $row_lista_finalidades['id_finalidade']?>"><?php echo $row_lista_finalidades['nm_finalidade']?></option>
 

Para:

<option value="<?php echo $row_lista_finalidades['nm_finalidade']?>"><?php echo $row_lista_finalidades['nm_finalidade']?></option>
 

e ai deu certo.

Alguém tem alguma forma de passar o id do value e não texto?

Obrigado

Editado por Clocks
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...