我想根据特定用户的数量添加未知数量的图像;我已经使用.Append函数为div,标签,输入和它的工作正常,但当我想附加源它不工作! 那怎么能这样呢? 我试过这个:
` string sc = "$('<img/>', {src=\"~/Content/themes/img2.jpg\" alt=\"\",class:'table-wrapper'}).appendTo(finalDalata);";
返回JavaScript(sc)`
finalDalata是我的Div名字 那么我做错了什么?
答案 0 :(得分:0)
你的appendTo代码无效,它需要一个选择器,你的图像属性格式不正确,所以它应该是:
string sc = "$('<img/>', { src:'~/Content/themes/img2.jpg', alt:'', class:'table-wrapper'}).appendTo('#finalDalata');"
但是,控制器应该返回数据而不是控制(想到漏洞和注入),所以更好的方法是在javascript中在View端创建一个AppendImage函数:
function AppendImage(attributes)
{
$('<img/>', attributes).appendTo('#finalDalata');
}
注意:您应该在确定之前清理属性。
然后仅返回属性列表:
var images = new List<dynamic>();
// Do this for each images
images.Add(new { src="~/Content/themes/img2.jpg", alt="", class="table-wrapper"});
return Json(images);
在ajax的成功中你可以:
success: function (data) {
data.foreach( function (item) {
AppendImage(item);
});
}
答案 1 :(得分:0)
由TagBuilder
TagBuilder tag = new TagBuilder("img");
tag.Attributes.Add("id", "myImage");
tag.Attributes.Add("src", "/imgs/" + UserName + ".jpg");
tag.Attributes.Add("alt", "my image");
tag.Attributes.Add("class", "imgsClass");
然后将tag
转换为字符串并将其传递回view
日Thnx