如何使用jquery获取具有内联样式的css
我正在从asp.net mvc(C#)应用程序中的数据库动态加载样式 我正在尝试更改加载的内联样式的一些属性,如(背景、字体颜色、字体大小等)。我正在使用jquery.rule来执行此操作 我需要使用jquery将完整的内联样式(包括更改)更新回数据库 头部内部的内联样式如下所示:如何使用jquery获取具有内联样式的css,jquery,css,asp.net-mvc,Jquery,Css,Asp.net Mvc,我正在从asp.net mvc(C#)应用程序中的数据库动态加载样式 我正在尝试更改加载的内联样式的一些属性,如(背景、字体颜色、字体大小等)。我正在使用jquery.rule来执行此操作 我需要使用jquery将完整的内联样式(包括更改)更新回数据库 头部内部的内联样式如下所示: <style type="text/css"> <! -- body { background: #fff; margin: 0px;
<style type="text/css">
<!
-- body
{
background: #fff;
margin: 0px;
padding: 0px;
font: normal 12px Tahoma, Verdana, Arial;
color: #636363;
}
a
{
color: #d0d0d0;
text-decoration: none;
}
#header
{
padding-left: 35px;
height: 60px;
vertical-align: middle;
padding-top: 25px;
}
-- ></style>
我需要更新内联样式。如何操作?使用jQuery ajax方法将表单序列化数据发布到操作方法:
$.ajax({
type: "POST",
url: "/YourController/UpdateCss",
data: "font=arial&color=#fff&font-size=10px"
success: function(result){
// handle your result here
}
});
然后,您可以通过“FormCollection”访问控制器操作中的已发布数据:
希望这有帮助
-标记
我需要使用jquery将完整的内联样式(包括更改)更新回数据库
您正在尝试读取页面中元素的内联样式声明吗?如果是这样,这就很棘手了。理论上,您应该能够调用element.getAttribute('style')
或jQuery的等效项。但是DOM属性访问在IE中不起作用;事实上,IE根本不存储文档中使用的属性,只存储由此产生的已解析样式声明
没有特定于jQuery的方法来读取所有样式,但是您可以使用CSS获得有效的内联样式规则
但在IE中,这将分隔您使用过的任何快捷方式属性,例如设置边框
会导致您返回边框样式
、边框颜色
和边框宽度
。IE也将大写属性名称。这对你来说可能重要,也可能不重要
您最好记住在单独的查找对象中所做的内联样式更改,以便更轻松地阅读。您可以使用jQuery的
data()
方法将其附加到元素,对'real'元素.style
和查找$(元素).data('stylestore')
对象进行所有更改,然后,当您即将发布时,从查找中检索所有设置的样式。我猜您无法使用return-typ-string构建操作为什么要在ajax请求中返回ActionResult??您最好返回bool、json、string等.$('elementid').css('font','arial')以更改类,返回$('elementid').css('font')以获取类值我需要获取页面的更新内联样式。我用示例内联样式更新了我的问题哦,你是说一个内部样式表,而不是内联样式属性?使用规则插件$('style').cssText()
(使用合适的选择器替换'style'
,以选择您的样式表,如果您一直在使用样式表)。如何使用jquery规则在iframe中获取内部样式表?您必须在iframe的文档中包含另一个jquery和规则插件副本,以及该副本版本的$
中的脚本。
[AcceptVerbs(HttpVerbs.Post)]
public String UpdateCss(FormCollection form)
{
// handle your form here
return "Success";
}
var style= element.style.cssText;