在主页上,我有一个按钮,用activeform调用引导模式。在提交此表单时,在我的数据库中添加新行。但是我看不出一个成功的消息,无论是在这个模态还是在主页上。取而代之的是,我进入mysite.ru/category/create页,上面有白色屏幕和对话框消息的文本(“对话框内容在这里......”)。如何不重定向用户在其他页面?只需在主页上关闭模态和/或重定向,并在此处显示关于成功添加行的闪存信息。
我的按钮在视图/网站/index.php:
<?= Html::button(
'create',
['value' => Url::to(['category/create']),
'id' => 'modalButton'
]) ?>
<?php
Modal::begin([
'id' => 'modal'
]);
echo "<div id='modalContent'></div>";
Modal::end();
?>
我的控制器SiteController有:
public function actionIndex()
{
return $this->render('index');
}
类别控制器具有
public function actionCreate()
{
$model = new Category;
if ($model->load(Yii::$app->request->post()) && Yii::$app->request->isAjax) {
$model->refresh();
Yii::$app->response->format = 'json';
return ActiveForm::validate($model);
} elseif ($model->load(Yii::$app->request->post()) && $model->save()) {
Yii::$app->session->setFlash('contactFormSubmitted');
//$model->refresh();
$this->refresh();
Dialog::begin([
'clientOptions' => [
'modal' => true,
],
]);
echo 'Dialog contents here...';
Dialog::end();
//$this->redirect('category/create');
} else {
return $this->renderAjax('create', [
'model' => $model,
]);
}
视图/类别/创建。php:
<?php
use yii\helpers\Html;
/* @var $this yii\web\View */
/* @var $model app\models\Category */
$this->title = 'Create Category';
$this->params['breadcrumbs'][] = ['label' => 'Categories', 'url' => ['index']];
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="category-create">
<h1><?= Html::encode($this->title) ?></h1>
<?= $this->render('_form', [
'model' => $model,
]) ?>
</div>
和视图/类别/表格。php
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
use yii\jui\Dialog;
/* @var $this yii\web\View */
/* @var $model app\models\Category */
/* @var $form yii\widgets\ActiveForm */
?>
<?php
$this->registerJsFile(Yii::getAlias('/scripts/main.js'));
?>
<?php if (Yii::$app->session->hasFlash('contactFormSubmitted')): ?>
<div class="alert alert-success">
Thank you for contacting us. We will respond to you as soon as possible.
</div>
<?php endif; ?>
<div class="category-form">
<?php $form = ActiveForm::begin([
'id' => $model->formName(),
//'enableAjaxValidation'=>true,
'validateOnSubmit'=>true,
//'action' => '/site/index'
]); ?>
<?= $form->field($model, 'title')->textInput(['maxlength' => 255]) ?>
<?= $form->field($model, 'description')->textarea(['rows' => 6]) ?>
<div class="form-group">
<?= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
</div>
<?php ActiveForm::end(); ?>
</div>
脚本/main。js:
// listen click, open modal and .load content
$('#modalButton').click(function (){
$('#modal').modal('show')
.find('#modalContent')
.load($(this).attr('value'));
});
// serialize form, render response and close modal
function submitForm($form) {
$.post(
$form.attr("action"), // serialize Yii2 form
$form.serialize()
)
.done(function(result) {
form.parent().replaceWith(result);
//$form.parent().html(result.message);
//$('#modal').modal('hide');
})
.fail(function() {
console.log("server error");
$form.replaceWith('<button class="newType">Fail</button>').fadeOut()
});
return false;
}
您必须防止表单被提交,并使用ajax。
$(your_form)
.on('beforeSubmit', function(event){
event.preventDefault();
submitForm($(your_form));
return false;
})
.on('submit', function(event){
event.preventDefault();
});
我是SpringMVC的新手。我正在从.jsp表单中获取一些数据,并从数据库中验证相同的数据,如果输入的数据已经存在,那么我想打印一条消息:“已经存在,输入不同的数据”,否则是“数据添加成功”,但是在用户输入数据的同一网页上,而不是在一个单独的网页上。
我在jsp页面中有一个html表单,在提交时将被发送到servlet。。在servlet中执行了这些函数之后,我再次将其重定向到同一个jsp页面,从该页面调用它,并显示一条成功消息,现在显示在同一个jsp页面上,但我不知道如何做到这一点。。。 这是我的jsp表单代码。。 这是我的servlet重定向代码。
问题内容: 假设我有时从服务器获取空数据,我想在DataTables中显示No Data found消息。这怎么可能? 问题答案: 如果要自定义在空表上显示的消息,请使用以下命令: 从Datatable 1.10开始,您可以执行以下操作: 有关表的 完整 可用数据表的 定制消息 ,请查看以下链接参考/选项/语言
我需要在rabbit mq中保存m条消息。我在SimpleMessageListenerContainer中将acknowledgeMode用作手册。这有助于我将值存储在unacked in rabbit mq中。但即使在作业完成后,这些消息仍然未经确认。我需要的邮件被删除后,作业成功完成。请帮我找到解决办法
问题内容: 我需要显示一条消息,以确认ASP.NET MVC应用程序中的数据库更新成功。当前,应用程序仅在发生错误时显示消息(使用ValidationSummary帮助器)。成功完成操作后,应用程序当前将重定向到导航中的适当点。 目标是: 以适当的方式显示确认消息 最小化阅读消息后继续进行所需的用户操作 避免额外的帖子/往返来显示消息 最大限度地减少开发工作,并冒着在应用程序中的多个点插入消息的风
刀 服务