如何加载包含根据数据库信息检查的复选框的页面

时间:2014-08-13 11:57:51

标签: sql asp.net-mvc razor

我知道有一些关于它的帖子。我已经尝试过这个答案,但我必须在某处遗漏某些东西(我很漂亮)。

正如我在标题中所说,我希望有一个页面显示根据数据库信息检查或不检查项目的大列表。页面加载带有Id。 类型:CSHTML,剃刀 数据库:缺陷 表名:defectqc

到目前为止,该表看起来有点像:

    <table>     
    <tr><td><p><input type="checkbox" name="ltcheck1" checked="@ltcheck1"></td></tr>
    <tr><td><p><input type="checkbox" name="ltcheck2" checked="@ltcheck2"></td></tr>
    <tr><td><p><input type="checkbox" name="ltcheck3" checked="@ltcheck3"></td> </tr>
    </table>

所以我在开始时尝试的代码脚本就是这个...

    var Id = "";
    var ltcheck1 = "";
    var ltcheck2 = "";
    var ltcheck3 = "";

   if(!IsPost){
    if(!Request.QueryString["Id"].IsEmpty() && Request.QueryString["Id"].IsInt()) {
        Id = Request.QueryString["Id"];
        var db = Database.Open("defect");
        var dbCommand = "SELECT * FROM defectqc WHERE Id = @0";
        var row = db.QuerySingle(dbCommand, Id);
   if(row != null) {
     ltcheck1 = row.ltcheck1;
     ltcheck2 = row.ltcheck2;
     ltcheck2 = row.ltcheck3;
 }

数据库将列写为“True”或“False”。如果列是“true”,我希望检查复选框

请MTV!皮条客我的车! ; d

对不起我的英语,我正在努力

3 个答案:

答案 0 :(得分:0)

<input type="checkbox"/>

只有在使用属性

时才会被检查
checked 

checked="checked"

所以尝试生成这个:

<input type="checkbox" checked/>

答案 1 :(得分:0)

遵循你的逻辑Schaemelhout如果我使用这种陈述那就有可能

var Id = "";
var ltcheck1 = "";
var ltcheck2 = "";
var ltcheck3 = "";

if(!IsPost){
if(!Request.QueryString["Id"].IsEmpty() && Request.QueryString["Id"].IsInt()) {
    Id = Request.QueryString["Id"];
    var db = Database.Open("defect");
    var dbCommand = "SELECT * FROM defectqc WHERE Id = @0";
    var row = db.QuerySingle(dbCommand, Id);


if(row.ltcheck1 = "true") {
      ltcheck1.checked
 }
if(row.ltcheck2 = "true") {
      ltcheck1.checked
 }

(我知道语法不正确)

我发现这是PHP中的

  <input type="checkbox" name="ltcheck1" value="True" <?php echo $checked; ?> />
  if ($row['letcheck1'] == 'True') $checked = 'checked="checked"';

假设数据已被拉出。它会完全符合我的需要......有没有办法翻译它?

答案 2 :(得分:0)

为什么不使用html助手?

@Html.CheckBox("ltcheck1")
@Html.CheckBox("ltcheck2")
@Html.CheckBox("ltcheck3")