我想显示CGridView组件与所有记录作为其相关更新页面的链接.
我希望每行末尾都有编辑按钮的功能,应用于整行.
如果我单击特定行的任何位置,它将分别将我重定向到其更新屏幕.
在Yii的CGridView中有可能吗?
UserMasterController代码:
public function actionUpdate($id){
$model=$this->loadModel($id);
if(isset($_POST['UserMaster'])){
$model->attributes=$_POST['UserMaster'];
$model->attributes['emailsent'] = 'N';
if($model->save())
$this->redirect(array('admin'));
}
$this->render('update',array(
'model'=>$model,
));
}
Run Code Online (Sandbox Code Playgroud)
给我一个错误的行是: $model->attributes['emailsent'] = 'N';
错误:间接修改过载属性
UserMaster::$attributes无效
如何更改属性值?我只是想将其设置为'Y'或者'N'按条件
我正在使用Yii开发一个网站.
当我使用gii代码生成器创建模块时,它会自动将身份验证添加到该特定模型和控制器的管理页面.
但我想在索引页面本身添加用户身份验证.因此,当用户打开网站时,它应该要求登录.
我在"view\site \"目录中有index.php,login.php也在同一目录下.
我在"\ controller"目录中有sitecontroller.php(通常)
这是我在Yii框架中的第一个项目.当网站打开时,有人建议我如何应用用户身份验证.
我有一个有4列名称,年龄,集合,利润的网格.但是当我尝试设置一个数字列时,它并没有反映在网格上.
schema:
{
model:{
fields:{
name:{type:"string"},
age:{type:"number"},
collection: { type:"number", defaultValue:0.00},
profit: { type:"number", defaultValue:0.00}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码很完美:
var grid = $("#grid").data("kendoGrid");
var data = grid.dataSource.at(0);
data.set("name", "John Doe");
Run Code Online (Sandbox Code Playgroud)
但我想更新数字列:
var grid = $("#grid").data("kendoGrid");
var data = grid.dataSource.at(0);
var collectionVal = 50000;
data.set("collection", collectionVal);
Run Code Online (Sandbox Code Playgroud)
并且它没有更新,因为列的类型为"number".
更新:
pageable:
{
refresh : true,
pageSizes: true
},
edit: function(e)
{
$('input[name="age"]').blur(function()
{
mygrid = $("#grid").data("kendoGrid");
selectedRow = mygrid.select();
dataItem = mygrid.dataItem(selectedRow);
dataItem.collection = dataItem.age * dataItem.profit;
dataItem.set("collection", dataItem.collection);
});
}
Run Code Online (Sandbox Code Playgroud) 我正在使用面板栏,因此表单标签会干扰它的打开/关闭动画
我发现表单标签正在产生问题,所以我希望当我单击提交按钮时将 div 标签转换为表单标签。
例如:
<div class="myForm">
<div id="detail">
Name: <input type="text" name="text_name" value="Some text here to edit"/>
</div>
<div id="income">
Income: <input type="text" name="text_income" value="your income"/>
</div>
<input type="submit" value="Submit" />
</div>
Run Code Online (Sandbox Code Playgroud)
转换成:
<form name="input" id="" action="html_form_action.php" method="post">
<div id="detail">
Name: <input type="text" name="text_name" value="Some text here to edit"/>
</div>
<div id="income">
Income: <input type="text" name="text_income" value="your income"/>
</div>
<input type="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
所以我想要的就是将类“.myForm”的 div 更改为 Form 元素,并使用关闭表单标记关闭 div。
有什么办法可以做到这一点吗?
yii ×3
controller ×1
forms ×1
gridview ×1
html ×1
javascript ×1
jquery ×1
kendo-grid ×1
kendo-ui ×1
login ×1
php ×1