单击按钮后在跨区文本中插入模型字符串

时间:2014-02-21 12:02:01

标签: jquery html css asp.net-mvc razor

使用razor可以很容易地在html中显示列表的值:

<div id="collapse1" style="display:none">
@{
    foreach (var i in Model)
    {
        <text> <strong>::: @i.City, @i.Country :::</strong> </text>
        <p style="margin-bottom:0px"></p>

        foreach (var h in i.Weather)
        {
            {
                <div id="MyDiv2">
                    <strong><small>@DateTime.Now.AddDays(count).ToString("dd/MM/yy")</small></strong>
                    <p style="margin-bottom:0px"></p>
                    <text><small>Max: @i.MaxTemp.ElementAt(@count)°</small></text>
                    <p style="margin-bottom:0px"></p>
                    <text><small>Min: @i.MinTemp.ElementAt(@count)°</small></text>
                    <span id="MyTest">the min temp: @i.MinTemp.ElementAt(0) </span>
                </div>
            }
            count++;
        }
    }
}
</div>

是的,小菜一碟。但是要知道我想在单击按钮之后更改跨度MyTest内的文本,以便它改为:“最大温度:@ i.MaxTemp.ElementAt(0)”。

我的问题是我必须混合使用jQuery(用于按钮)和razor(以获取maxtemp值)。任何帮助/提示都非常感谢!

1 个答案:

答案 0 :(得分:1)

<div id="collapse1" style="display:none">
@{
    int mycounter=0;
    foreach (var i in Model)
    {
        <text> <strong>::: @i.City, @i.Country :::</strong> </text>
        <p style="margin-bottom:0px"></p>

        foreach (var h in i.Weather)
        {
            {
                <div id="MyDiv2">
                    <strong><small>@DateTime.Now.AddDays(count).ToString("dd/MM/yy")</small></strong>
                    <p style="margin-bottom:0px"></p>
                    <text><small>Max: @i.MaxTemp.ElementAt(@count)°</small></text>
                    <p style="margin-bottom:0px"></p>
                    <text><small>Min: @i.MinTemp.ElementAt(@count)°</small></text>
                    <span maxtemp=' @i.MaxTemp.ElementAt(0)' id="MyTest">the min temp: @i.MinTemp.ElementAt(0) </span>
                </div>
            }
            count++;
        }
    }
}
</div>
$('#MyTest').on('click',function(){

$(this).text($(this).attr('maxtemp'));

}):