Formulário título mensagem
2 participantes
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1
Formulário título mensagem
Detalhes da questão
Endereço do fórum: http://sistema-forum.forumeiros.com
Versão do fórum: ModernBB
Descrição
Queria saber como fazer o meu formulário postar mensagem em um tópico com título da mensagem. Obrigado
Meu formulário:
- Código:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css"/>
<title>Capelli</title>
<meta charset="utf-8">
<style type="text/css">
*,
*::before,
*::after {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html,
body {
height: 100%;
}
body {
font-size: 17px;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-weight: normal;
line-height: 1.5;
color: #212121;
line-height: 1.5;
background: #fff;
}
/**
* Begin tipografia.
*/
a,
a:active,
a:link,
a:visited,
a:focus {
color: #007bff;
text-decoration: none;
border-bottom: solid 1px transparent;
outline: 0;
}
a:hover {
border-bottom-color: #2688dc;
}
a.fa:hover {
border-bottom-color: transparent;
color: #1f6db0;
}
h3 {
font-size: 20px;
font-weight: 300;
margin-bottom: 10px;
display: block;
width: 100%;
padding-bottom: 3px;
border-bottom: 2px solid #375e7f;
}
textarea {
height: 90px;
box-sizing: border-box;
resize: vertical;
outline: none;
}
.btn {
border: solid 1px #e4e4e4;
background: linear-gradient(180deg, #fff 0%, #efefef 100%);
padding: .575rem 1.1rem;
border-radius: .175rem;
font-weight: 600;
color: #686a6b;
cursor: pointer;
display: block;
text-align: center;
margin-bottom: 5px;
width: 100%;
}
.btn:focus {
border-color: #375e7f;
box-shadow: inset 0 -5px 40px rgba(120, 120, 120, 0.1), inset 0 1px 2px rgba(27, 31, 35, 0.075), 0 0 0 0.2em rgba(0, 0, 0, 0.1);
outline: none;
}
.btn:hover {
box-shadow: inset 0 -100px rgba(108, 108, 108, 0.1);
}
.btn.btn-primary {
border-radius: 3px;
box-shadow: none;
color: #fff;
background: #007bff;
font-size: 14px;
transition: linear all 125ms;
margin-top: 32%;
}
.btn.btn-primary:focus {
border-color: #375e7f;
box-shadow: inset 0 1px 2px rgba(39, 56, 28, 0.075), 0 0 0 0.2em rgba(39, 56, 28, 0.6);
outline: none;
}
.btn.btn-primary:hover {
background: #444;
}
.btn.btn-danger {
color: #fff;
border-color: #bd2c00;
background: #e7592e;
background: linear-gradient(180deg, #f86b40 0%, #bd2c00 100%);
}
.btn.btn-danger:focus {
border-color: #aa2c05;
box-shadow: inset 0 1px 2px rgba(27, 31, 35, 0.075), 0 0 0 0.2em rgba(197, 53, 9, 0.66);
outline: none;
}
.btn-progress {
cursor: not-allowed;
opacity: .657;
}
.form-control {
background-color: #fff;
border: 1px solid #d4d4d4;
padding: 6px 8px;
margin: 5px 0 0;
display: block;
width: 100%;
font-size: 16px;
color: #555;
line-height: 20px;
border-radius: 3px;
box-shadow: inset 0 1px 2px rgba(27, 31, 35, 0.075);
outline: none;
}
.form-control:focus {
border-color: #4b6b35;
box-shadow: inset 0 1px 2px rgba(75, 107, 53, 0.075), 0 0 0 0.2em rgba(75, 107, 53, 0.6);
outline: none;
}
input[type="text"]:disabled {
background: #dddddd;
cursor: not-allowed;
}
.card {
background-color: #E54732;
padding: 5px;
font-size: 10px;
color: #fff;
font-weight: 800;
border-radius: 5px;
float: left;
margin-right: 5px;
}
/*
* End tipografia.
**/
.wrapper {
width: 50%;
position: absolute;
top: 5%;
left: 50%;
-webkit-transform: translateX(-50%);
-moz-transform: translateX(-50%);
-ms-transform: translateX(-50%);
-o-transform: translateX(-50%);
transform: translateX(-50%);
}
.wrapper hgroup {
text-align: center;
}
.wrapper hgroup i.fa {
font-size: 4em;
}
.wrapper hgroup h1 {
font-weight: 300;
margin: 10px 0;
padding: 0;
color: #545454;
}
.wrapper form {
border: solid 1px #d4d4d4;
margin: 0 0 25px;
padding: 20px;
color: #555;
border-radius: 4px;
background-color: #fff;
}
.wrapper form .form-group label {
display: table;
}
.wrapper form .form-group .form-group-col {
float: left;
margin-right: 2%;
margin-top: 2%;
margin-bottom: 2%;
}
.form-group .form-group-col:first-child {
margin-left: 3%;
}
.wrapper footer {
border: solid 1px #d6d6d6;
border-radius: 3px;
padding: 13px;
text-align: center;
font-size: 16px;
color: #555;
margin-bottom: 2%;
}
.col-94 {
width: 94%;
}
.col-30 {
width: 30%;
}
.col-46 {
width: 46%;
}
/**
* FOR JS Styles:
*/
#fa-generated-form,
footer {
box-shadow: 3px 3px 2px 0px rgba(0, 0, 0, 0.16);
}
.title h2 {
font-weight: 300;
margin-bottom: 5px;
text-align: center;
}
.title h4 {
font-weight: 300;
margin-bottom: 15px;
text-align: center;
}
@media screen and (max-width: 900px) {
.wrapper {
width: 40%;
}
}
@media screen and (max-width: 600px) {
.wrapper {
width: 70%;
}
}
@media screen and (max-width: 500px) {
.wrapper {
width: 80%;
}
}
@media screen and (max-width: 400px) {
.wrapper {
width: 90%;
}
}
</style>
</head>
<body>
<main class="wrapper">
<form id="fa-generated-form">
<a href="/h1-menu" title="Voltar ao menu"><i class="fas fa-arrow-left" aria-hidden="true"></i></a>
<div class="title">
<h4>Título</h4>
</div>
<h3>Dados pessoais</h3>
<div class="form-group" style="margin-bottom: 5%;">
<div class="form-group-col col-30">
<label for="campo1">campo1:</label>
<input type="text" id="campo1" class="form-control" placeholder="" required/>
</div>
<div class="form-group-col col-30">
<label for="campo2">campo2:</label>
<input type="text" id="campo2" class="form-control" placeholder="" required/>
</div>
<div class="form-group-col col-30">
<label for="campo3">campo3:</label>
<input type="text" id="campo3" class="form-control" placeholder="" required/>
</div>
</div>
<h3>Dados profissionais</h3>
<div class="form-group">
<div class="form-group-col col-30">
<label for="campo4">campo4:</label>
<input type="text" id="campo4" class="form-control" placeholder="" required/>
</div>
<div class="form-group-col col-30">
<label for="campo5">campo5:</label>
<input type="text" id="campo5" class="form-control" placeholder="" required/>
</div>
<div class="form-group-col col-30">
<label for="campo6">campo6:</label>
<input type="text" id="campo6" class="form-control" placeholder="" required/>
</div>
</div>
<br/>
<button type="submit" class="btn btn-primary">Enviar</button>
</form>
</main>
<!-- Javascript's -->
<!-- Não recomendada a edição abaixo desta linha. -->
<textarea style="display: none;" id="fa-generated-message">[center][size=18][font=sans-serif]TÍTULO[/font][/size][/center]
[center][font=sans-serif][size=12]SUBTÍTULO[/size][/font][/center]
[b]campo1:[/b] {{campo1}}
[b]campo2:[/b] {{campo2}}
[b]campo3:[/b] {{campo3}}
[b]campo4:[/b] {{campo4}}
[b]campo5:[/b] {{campo5}}
[b]campo5:[/b] {{campo6}}</textarea>
<input type="hidden" id="fa-generated-title" value="" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" type="text/javascript"></script>
<script src="https://forumeiros.github.io/assets/src/form-generator/form-replace.js" type="text/javascript"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@9.10.13/dist/sweetalert2.all.min.js"></script>
<script type="text/javascript">
(function ($) {
'use strict';
$(window).on('load', function () {
$('#fa-generated-form').on('submit', function (event) {
event.preventDefault();
$(this).find('button[type="submit"]').text('Postando...');
setTimeout(function () {
$.post('/post', {
t: 1,
message: $('#fa-generated-message').val().trim(),
mode: 'reply',
tid: $('[name="tid"]:first').val(),
post: 1,
}).done(function () {
Swal.fire({
icon: 'success',
title: 'Postado com sucesso!',
html: 'Você será redicionado ao fórum',
timer: 3000,
allowEscapeKey: false,
showConfirmButton: false,
timerProgressBar: true
}).then((result) => {
if (
result.dismiss === Swal.DismissReason.timer
) {
location.href = 'http://' + location.host + '/t1-?view=newest';
}
});
}).fail(function () {
alert('Houve um erro! Tente novamente!');
});
}, 600);
});
});
}(jQuery));
</script>
</body>
</html>
Re: Formulário título mensagem
Olá @vcapelli,
O título dessa mensagem será um pré-definido ou um escolhido pelo usuário?
(Aguardo uma resposta sua)
Atenciosamente,
pedxz.
O título dessa mensagem será um pré-definido ou um escolhido pelo usuário?
(Aguardo uma resposta sua)
Atenciosamente,
pedxz.
tikky- Admineiro
- Membro desde : 13/01/2017
Mensagens : 7964
Pontos : 9219
Re: Formulário título mensagem
@vcapelli: Altere o código do seu formulário para:
- Código:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css"/>
<title>Capelli</title>
<meta charset="utf-8">
<style type="text/css">
*,
*::before,
*::after {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html,
body {
height: 100%;
}
body {
font-size: 17px;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-weight: normal;
line-height: 1.5;
color: #212121;
line-height: 1.5;
background: #fff;
}
/**
* Begin tipografia.
*/
a,
a:active,
a:link,
a:visited,
a:focus {
color: #007bff;
text-decoration: none;
border-bottom: solid 1px transparent;
outline: 0;
}
a:hover {
border-bottom-color: #2688dc;
}
a.fa:hover {
border-bottom-color: transparent;
color: #1f6db0;
}
h3 {
font-size: 20px;
font-weight: 300;
margin-bottom: 10px;
display: block;
width: 100%;
padding-bottom: 3px;
border-bottom: 2px solid #375e7f;
}
textarea {
height: 90px;
box-sizing: border-box;
resize: vertical;
outline: none;
}
.btn {
border: solid 1px #e4e4e4;
background: linear-gradient(180deg, #fff 0%, #efefef 100%);
padding: .575rem 1.1rem;
border-radius: .175rem;
font-weight: 600;
color: #686a6b;
cursor: pointer;
display: block;
text-align: center;
margin-bottom: 5px;
width: 100%;
}
.btn:focus {
border-color: #375e7f;
box-shadow: inset 0 -5px 40px rgba(120, 120, 120, 0.1), inset 0 1px 2px rgba(27, 31, 35, 0.075), 0 0 0 0.2em rgba(0, 0, 0, 0.1);
outline: none;
}
.btn:hover {
box-shadow: inset 0 -100px rgba(108, 108, 108, 0.1);
}
.btn.btn-primary {
border-radius: 3px;
box-shadow: none;
color: #fff;
background: #007bff;
font-size: 14px;
transition: linear all 125ms;
margin-top: 32%;
}
.btn.btn-primary:focus {
border-color: #375e7f;
box-shadow: inset 0 1px 2px rgba(39, 56, 28, 0.075), 0 0 0 0.2em rgba(39, 56, 28, 0.6);
outline: none;
}
.btn.btn-primary:hover {
background: #444;
}
.btn.btn-danger {
color: #fff;
border-color: #bd2c00;
background: #e7592e;
background: linear-gradient(180deg, #f86b40 0%, #bd2c00 100%);
}
.btn.btn-danger:focus {
border-color: #aa2c05;
box-shadow: inset 0 1px 2px rgba(27, 31, 35, 0.075), 0 0 0 0.2em rgba(197, 53, 9, 0.66);
outline: none;
}
.btn-progress {
cursor: not-allowed;
opacity: .657;
}
.form-control {
background-color: #fff;
border: 1px solid #d4d4d4;
padding: 6px 8px;
margin: 5px 0 0;
display: block;
width: 100%;
font-size: 16px;
color: #555;
line-height: 20px;
border-radius: 3px;
box-shadow: inset 0 1px 2px rgba(27, 31, 35, 0.075);
outline: none;
}
.form-control:focus {
border-color: #4b6b35;
box-shadow: inset 0 1px 2px rgba(75, 107, 53, 0.075), 0 0 0 0.2em rgba(75, 107, 53, 0.6);
outline: none;
}
input[type="text"]:disabled {
background: #dddddd;
cursor: not-allowed;
}
.card {
background-color: #E54732;
padding: 5px;
font-size: 10px;
color: #fff;
font-weight: 800;
border-radius: 5px;
float: left;
margin-right: 5px;
}
/*
* End tipografia.
**/
.wrapper {
width: 50%;
position: absolute;
top: 5%;
left: 50%;
-webkit-transform: translateX(-50%);
-moz-transform: translateX(-50%);
-ms-transform: translateX(-50%);
-o-transform: translateX(-50%);
transform: translateX(-50%);
}
.wrapper hgroup {
text-align: center;
}
.wrapper hgroup i.fa {
font-size: 4em;
}
.wrapper hgroup h1 {
font-weight: 300;
margin: 10px 0;
padding: 0;
color: #545454;
}
.wrapper form {
border: solid 1px #d4d4d4;
margin: 0 0 25px;
padding: 20px;
color: #555;
border-radius: 4px;
background-color: #fff;
}
.wrapper form .form-group label {
display: table;
}
.wrapper form .form-group .form-group-col {
float: left;
margin-right: 2%;
margin-top: 2%;
margin-bottom: 2%;
}
.form-group .form-group-col:first-child {
margin-left: 3%;
}
.wrapper footer {
border: solid 1px #d6d6d6;
border-radius: 3px;
padding: 13px;
text-align: center;
font-size: 16px;
color: #555;
margin-bottom: 2%;
}
.col-94 {
width: 94%;
}
.col-30 {
width: 30%;
}
.col-46 {
width: 46%;
}
/**
* FOR JS Styles:
*/
#fa-generated-form,
footer {
box-shadow: 3px 3px 2px 0px rgba(0, 0, 0, 0.16);
}
.title h2 {
font-weight: 300;
margin-bottom: 5px;
text-align: center;
}
.title h4 {
font-weight: 300;
margin-bottom: 15px;
text-align: center;
}
@media screen and (max-width: 900px) {
.wrapper {
width: 40%;
}
}
@media screen and (max-width: 600px) {
.wrapper {
width: 70%;
}
}
@media screen and (max-width: 500px) {
.wrapper {
width: 80%;
}
}
@media screen and (max-width: 400px) {
.wrapper {
width: 90%;
}
}
</style>
</head>
<body>
<main class="wrapper">
<form id="fa-generated-form">
<a href="/h1-menu" title="Voltar ao menu"><i class="fas fa-arrow-left" aria-hidden="true"></i></a>
<div class="title">
<h4>Título</h4>
</div>
<h3>Dados pessoais</h3>
<div class="form-group" style="margin-bottom: 5%;">
<div class="form-group-col col-30">
<label for="campo1">campo1:</label>
<input type="text" id="campo1" class="form-control" placeholder="" required/>
</div>
<div class="form-group-col col-30">
<label for="campo2">campo2:</label>
<input type="text" id="campo2" class="form-control" placeholder="" required/>
</div>
<div class="form-group-col col-30">
<label for="campo3">campo3:</label>
<input type="text" id="campo3" class="form-control" placeholder="" required/>
</div>
</div>
<h3>Dados profissionais</h3>
<div class="form-group">
<div class="form-group-col col-30">
<label for="campo4">campo4:</label>
<input type="text" id="campo4" class="form-control" placeholder="" required/>
</div>
<div class="form-group-col col-30">
<label for="campo5">campo5:</label>
<input type="text" id="campo5" class="form-control" placeholder="" required/>
</div>
<div class="form-group-col col-30">
<label for="campo6">campo6:</label>
<input type="text" id="campo6" class="form-control" placeholder="" required/>
</div>
</div>
<br/>
<button type="submit" class="btn btn-primary">Enviar</button>
</form>
</main>
<!-- Javascript's -->
<!-- Não recomendada a edição abaixo desta linha. -->
<textarea style="display: none;" id="fa-generated-message">[center][size=18][font=sans-serif]TÍTULO[/font][/size][/center]
[center][font=sans-serif][size=12]SUBTÍTULO[/size][/font][/center]
[b]campo1:[/b] {{campo1}}
[b]campo2:[/b] {{campo2}}
[b]campo3:[/b] {{campo3}}
[b]campo4:[/b] {{campo4}}
[b]campo5:[/b] {{campo5}}
[b]campo5:[/b] {{campo6}}</textarea>
<input type="hidden" id="fa-generated-title" value="Título da mensagem. Uso de um campo {{campo3}}" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" type="text/javascript"></script>
<script src="https://forumeiros.github.io/assets/src/form-generator/form-replace.js" type="text/javascript"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@9.10.13/dist/sweetalert2.all.min.js"></script>
<script type="text/javascript">
(function ($) {
'use strict';
$(window).on('load', function () {
$('#fa-generated-form').on('submit', function (event) {
event.preventDefault();
$(this).find('button[type="submit"]').text('Postando...');
setTimeout(function () {
$.post('/post', {
t: 1,
subject: $('#fa-generated-title').val().trim(),
message: $('#fa-generated-message').val().trim(),
mode: 'reply',
tid: $('[name="tid"]:first').val(),
post: 1,
}).done(function () {
Swal.fire({
icon: 'success',
title: 'Postado com sucesso!',
html: 'Você será redicionado ao fórum',
timer: 3000,
allowEscapeKey: false,
showConfirmButton: false,
timerProgressBar: true
}).then((result) => {
if (
result.dismiss === Swal.DismissReason.timer
) {
location.href = 'http://' + location.host + '/t1-?view=newest';
}
});
}).fail(function () {
alert('Houve um erro! Tente novamente!');
});
}, 600);
});
});
}(jQuery));
</script>
</body>
</html>
- Código:
<input type="hidden" id="fa-generated-title" value="Título da mensagem. Uso de um campo {{campo3}}" />
tikky- Admineiro
- Membro desde : 13/01/2017
Mensagens : 7964
Pontos : 9219
Re: Formulário título mensagem
Tópico resolvidoMovido para "Questões resolvidas". |
tikky- Admineiro
- Membro desde : 13/01/2017
Mensagens : 7964
Pontos : 9219
Tópicos semelhantes
» Linha entre titulo de mensagem e mensagem
» Titulo da mensagem
» Titulo/mensagem
» Editar título gerado pelo formulário de postagem
» Formulário de mensagem privada
» Titulo da mensagem
» Titulo/mensagem
» Editar título gerado pelo formulário de postagem
» Formulário de mensagem privada
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos