Latest web development tutorials
×

jQuery EasyUI curso

jQuery EasyUI curso jQuery EasyUI breve introdução

jEasyUI aplicação

jEasyUI Criando um aplicativo CRUD jEasyUI Criando uma grade de dados CRUD jEasyUI formulário de pedido de CRUD jEasyUI Criar um leitor de RSS

jEasyUI Drag and Drop

jEasyUI arraste básico e queda jEasyUI Criar carrinho de compras queda jEasyUI Criar um currículo escolar

jEasyUI Menus e botões

jEasyUI Criando um menu simples jEasyUI Criar botão link jEasyUI Criar um botão de menu jEasyUI Criar botão de divisão

jEasyUI traçado

jEasyUI Criar um layout de borda jEasyUI Criar layouts complexos jEasyUI Criar painel de dobramento jEasyUI Criar guia jEasyUI Dinamicamente adicionar guias jEasyUI Adicionar separador AutoPlay jEasyUI Criar XP Style no painel do lado esquerdo

jEasyUI Grade de dados

jEasyUI Convertido para grade de dados tabela HTML jEasyUI Obter linha de dados selecionada jEasyUI Adicionar inquérito jEasyUI Adicionar barra de ferramentas jEasyUI Criar barras de ferramentas complexas jEasyUI Configurando colunas de congelamento jEasyUI coluna de mudança dinâmica jEasyUI Colunas de formato jEasyUI Definir o tipo jEasyUI Organização personalizada jEasyUI Criar uma combinação de colunas jEasyUI Adicionar checkbox jEasyUI paginação personalizada jEasyUI Permitir a edição em linha jEasyUI editor estendida jEasyUI operação da coluna jEasyUI célula mesclada jEasyUI Criar uma exibição personalizada jEasyUI Criar resumo de rodapé jEasyUI Condições definir linha cor de fundo jEasyUI Criar uma grade de propriedade jEasyUI linhas expandidas Ver detalhes jEasyUI Criar subdivisões jEasyUI Exibir dados em massa jEasyUI Adicionar um componente de página

jEasyUI janela

jEasyUI Criando uma janela simples jEasyUI Barras de ferramentas de janela de costume jEasyUI Janela e layout jEasyUI Criar diálogo jEasyUI caixa de diálogo Personalizar

jEasyUI árvore de menus

jEasyUI Use tags para criar menu em árvore jEasyUI Criar menu em árvore assíncrona jEasyUI Adicionando um menu árvore de nós jEasyUI Criar menu de árvore com caixas de seleção jEasyUI Arraste e solte o controle de menu em árvore jEasyUI menu de carga de árvores nós pai / filho jEasyUI Criando uma árvore baseado em grid jEasyUI Criar uma malha de árvore complexa jEasyUI grade de árvore carregado dinamicamente jEasyUI Adicionar um guia Grade árvore jEasyUI carregamento lento árvore de nós de grade

jEasyUI formulário

jEasyUI Envie o formulário para criar um assíncrono jEasyUI Autenticação de formulários jEasyUI Criar uma caixa de árvore drop-down jEasyUI caixa suspensa Format jEasyUI Filtro de grade de dados drop-down

jEasyUI manual de referência

jQuery EasyUI widget jQuery EasyUI propagação

aplicações jQuery EasyUI - criando um detalhe CRUD formulário de edição aplicativo de linha de implantação

Ao alternar exibição de grade de dados (vista datagrid) para 'DetailView', o usuário pode expandir a linha para exibir os detalhes de algumas das linhas na linha abaixo. Esta funcionalidade permite-lhe impedir que o painel de linha de quebra (painel) na edição forma (forma) para fornecer alguma disposição adequada (layout). Neste tutorial, vamos usar a grade de dados (datagrid) componentes para reduzir o formulário de edição (forma) do espaço ocupado.

Passo 1: Definir a grade de dados de tags HTML (DataGrid)

<Table id = "dg" title = "meus usuários" style = "width: 550px; height: 250px"
		url = "get_users.php"
		toolbar = "# barra de ferramentas"
		fitColumns = "true" singleSelect = "true">
	<Thead>
		<Tr>
			<Th campo = "nome" width = "50"> Nome </ th>
			<Field Th = "sobrenome" width = "50"> Apelido </ th>
			<Field Th = "telefone" width = "50"> Telefone </ th>
			<Th field = "email" width = "50"> E-mail </ th>
		</ Tr>
	</ Thead>
</ Table>
<Div id = "barra de ferramentas">
	<a href="#" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newItem()"> New </a>
	<a href="#" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="destroyItem()"> Destruir </a>
</ Div>

Passo 2: Data Grid (DataGrid) Aplicações Visualização de detalhes

$ ( "# DG»). Datagrid ({
	Ver: DetailView,
	detailFormatter: function (índice, row) {
		return '<div class = "ddv"> </ div>';
	},
	onExpandRow: function (índice, row) {
		var ddv = $ (this) .datagrid ( 'getRowDetail', index) .find ( 'div.ddv');
		ddv.panel ({
			border: false,
			cache: verdadeiro,
			href: 'índice show_form.php =' + índice,
			onLoad: function () {
				$ ( "# DG») datagrid ( 'fixDetailRowHeight', index) .;
				$ ( "# DG») datagrid ( 'SelectRow', index) .;
				$ ( "# DG») datagrid ( 'getRowDetail', index) .find forma ( "forma") ( 'load', linha) ..;
			}
		});
		$ ( "# DG») datagrid ( 'fixDetailRowHeight', index) .;
	}
});

Para que a grade de dados detalhes (DataGrid) Aplicação ver no cabeçalho da página html arquivos 'datagrid-detailview.js' introduzido.

Nós usamos a função 'detailFormatter' para gerar o conteúdo da linha de detalhe. Neste caso, voltamos a um lugar para o formulário de edição (form) esvaziar <div>. Quando o usuário clica sobre a linha de botão de expansão ( '+'), evento 'onExpandRow' será disparado, vamos carregar o formulário de edição de ajax (formulário). Chamar o método 'getRowDetail' para obter o detalhe linha de contentores, para que possamos encontrar o painel de linha de detalhe (painel). Detalhes do Painel criado linha (painel), carregue o formulário de edição (forma) de retorno "show_form.php '.

Passo 3: Criar formulário de edição (Form)

formulário de edição (forma) é carregado a partir do servidor.

show_form.php
<Form method = "post">
	<Tabela class = "dv-table" style = "width: 100%; background: #fafafa; padding: 5px; margin-top: 5px;">
		<Tr>
			<Td> Nome </ td>
			<Td> <input name = class "nome" = "easyui-validatebox" required = "true"> </ entrada> </ td>
			<Td> Apelido </ td>
			<Td> <input name = "sobrenome" class = "easyui-validatebox" required = "true"> </ entrada> </ td>
		</ Tr>
		<Tr>
			<Td> Telefone </ td>
			<Td> <input name = "telefone"> </ entrada> </ td>
			<Td> e-mail </ td>
			<Td> <input name = "email" class = "easyui-validatebox" VALIDTYPE = "email"> </ entrada> </ td>
		</ Tr>
	</ Table>
	<Div style = "padding: 5px 0; text-align: right; padding-right: 30px">
		<a href="#" class="easyui-linkbutton" iconCls="icon-save" plain="true" onclick="saveItem(&lt;?php echo $_REQUEST['index'];?&gt;)"> salve </a>
		<a href="#" class="easyui-linkbutton" iconCls="icon-cancel" plain="true" onclick="cancelItem(&lt;?php echo $_REQUEST['index'];?&gt;)"> Anular </a>
	</ Div>
</ Form>

Passo 4: Guardar ou Cancelar edição

Chamar função 'saveItem' para salvar um usuário ou invocar a função 'cancelItem' para cancelar a edição.

função saveItem (index) {
	var row = $ ( '# dg') datagrid ( 'getRows') [índice] .;
	var url = row.isNewRecord 'save_user.php': 'id = update_user.php?' + row.id ;?
	$ ( "# DG»). Datagrid ( 'getRowDetail', index) .find ( "forma"). Form ( "enviar", {
		url: url,
		onSubmit: function () {
			return $ (this) .form ( 'validar');
		},
		sucesso: function (data) {
			data = eval ( '(' dados + + ')');
			data.isNewRecord = false;
			$ ( "# DG») datagrid ( 'collapseRow', index) .;
			$ ( "# DG»). Datagrid ( 'updateRow', {
				index: índice,
				linha: dados
			});
		}
	});
}

Que decidiu retornar uma URL, e depois olhar para o (form) objeto de formulário e chamar "enviar" método para submeter os dados do formulário (formulário). Quando os dados foram salvas com sucesso, dobrado e atualizar as linhas de dados.

função cancelItem (index) {
	var row = $ ( '# dg') datagrid ( 'getRows') [índice] .;
	Se (row.isNewRecord) {
		. $ ( '# DG ») datagrid (' deleteRow ', index);
	} Else {
		$ ( "# DG») datagrid ( 'collapseRow', index) .;
	}
}

Quando você cancelar a ação de edição, se a linha é uma nova linha e não foi salvo, excluir a linha, caso contrário, a linha de dobra.

Baixar exemplos jQuery EasyUI

jeasyui-app-crud3.zip