① 如何:编写多选复选框筛选器 Web 部件
示例 using System; using System.Collections.Generic; using System.ComponentModel; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using aspnetwebparts = System.Web.UI.WebControls.WebParts; using Microsoft.Office.Server.Utilities; using wsswebparts = Microsoft.SharePoint.WebPartPages; using Microsoft.SharePoint.Portal.WebControls; using System.Collections.ObjectModel; using Microsoft.SharePoint.Utilities; using System.Data; using System.Collections; namespace MyWebPartLibrary { public class RegionFilterWebPart : aspnetwebparts.WebPart, wsswebparts.ITransformableFilterValues { CheckBoxList cblRegionList; ListItem cbitemRegion; public virtual bool AllowMultipleValues { get { return true; } } public virtual bool AllowAllValue { get { return true; } } public virtual bool AllowEmptyValue { get { return false; } } public virtual string ParameterName { get { return "Geography"; } } public virtual ReadOnlyCollection ParameterValues { get { string[] values = this.(); return values == null ? null : new ReadOnlyCollection(values); } } protected override void CreateChildControls() { cblRegionList = new CheckBoxList(); Controls.Add(cblRegionList); cbitemRegion = new ListItem(); cbitemRegion.Text = "Seattle"; cblRegionList.Items.Add(cbitemRegion); cbitemRegion = null; cbitemRegion = new ListItem(); cbitemRegion.Text = "US"; cblRegionList.Items.Add(cbitemRegion); cbitemRegion = null; cbitemRegion = new ListItem(); cbitemRegion.Text = "World"; cblRegionList.Items.Add(cbitemRegion); cbitemRegion = null; cbitemRegion = new ListItem(); cbitemRegion.Text = "All"; cblRegionList.Items.Add(cbitemRegion); cbitemRegion = null; base.CreateChildControls(); } [aspnetwebparts.ConnectionProvider("Region Filter", "ITransformableFilterValues", AllowsMultipleConnections = true)] public wsswebparts.ITransformableFilterValues SetConnectionInterface() { return this; } protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); } public string[] () { String[] choices = new String[5]; bool anythingSelected = false; for (int i = 0; i < cblRegionList.Items.Count; i++) { //get the selected choices if (cblRegionList.Items[i].Selected) { anythingSelected = true; if (cblRegionList.Items[i].Text != "All") { choices[i] = cblRegionList.Items[i].Text; } else { choices = null; return choices; } } } if (!anythingSelected) choices = null; return choices; } protected override void RenderContents(HtmlTextWriter output) { this.EnsureChildControls(); RenderChildren(output); } } } 另请参阅其他资源如何:使用多选复选框筛选器 Web 部件
② web前端页面布局,一般情况用哪些标签最好,可以尽可能地达到各浏览器对标签元素的识别
用DIV写是最好的。浏览器无论是信息的爬虫和页面的重构都会很好。浏览器兼容的问题主要是你CSS写的严谨不严谨。你CSS写的不够全有的浏览器自然会有这些问题。而且有的属性可能不兼容每个浏览器。标签最好的就是DIV了。
③ web基础(link标签的用法)
一慧判直在使用link标签,这几天接触到了less预处理器之后,怎么定义link都出现了一些问题,在网上查了一些资料,最终是这样定义link的:
<link rel="stylesheet/less" type="text/css" href="css/less.less">
此时,页面上已经可以正常显示css了。我才发现我还并不了解link的机制是什么样子的,天呐~(需要用心钻研了)
上w3c查询link可以看到link标签共有9个属性(平时也用不到这么多,所以就解剖以下以上link中的三个属性,剩下的就当是科普一下吧 ~_~)
看到一对理论性的东西,就莫名的头大!话不多说直接开搞。
看到这里基本上就明白了rel当中的值的作用了,其实stylesheet的作用就是为了 标明当前文档与link链接的文档的关系而已 。例如<link rel="stylesheet">就是说明了link链接的文档属于当前的文档的外部链接样式表。
例中stylesheet后添加了一个/less的作用,就是为了说明此链接文档是less文档
(这么规定的,照做就行了~)亩碧改
type表面上看似很简单,只有一个MIME_type的值,实际上 MIME_type 代表了所有迅判的文档类型,有兴趣的话,可以自己了解了解,反正我看了之后只觉得几百种类型,我才用过几种,如果牵扯到ajax的话,相对来说会用的比较多了。(附上w3c中能够用到的script类型 MIME_type )
href属性就比较简单了, 它是用来确定你link文件的路径 ,当然了只要是路径都有绝对相对的,就看你把它放在哪里找出来就是了。
想必大家也用过target这个属性,我也是刚刚看到这个属性居然在h5中不支持了,我的天,这是什么鬼!不过,在测试中,ie8+、firfox、geogle依然能够使用该属性,也就是说,没毛病,可以放心的使用。
好了,link标签中常用的属性就这3个了,剩下的属性因为有默认值的存在,也就不需要你再动手去填写了,但是如果你有特殊要求的话,肯定也不会是看我这篇文章的人了吧~_~。
补充一句(script标签同理的,我懒,我就不背锅了!!!)
④ html如何做下拉的可多选的复选框列表
下面是我做的一个范例,你可以参考一下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>自定义表单1 - powered by dedecms</title>
<link href="img/nspage.css" rel="stylesheet" type="text/css" />
<script language="javascript" src="../include/dedeajax2.js"></script>
</head>
<body>
<div class="main mceneter">
<div class="toplogo">
<div class="logo">
<a href="/"><img src="/templets/default/images/logo.gif" /></a>
</div>
<div class="title">
<a href='diy.php?action=list&diyid=1'>自定义表单1</a> > 发布信息
</div>
</div>
<div class="cmain">
<div class="ctitle">
<h1>自定义表单1发布</h1>
<span></span>
</div>
<div class="cbox mceneter">
<div class="maplist">
<br />
<form action="/plus/diy.php" enctype="multipart/form-data" method="post">
<input type="hidden" name="action" value="post" />
<input type="hidden" name="diyid" value="1" />
<input type="hidden" name="do" value="2" />
<table style="width:97%;" cellpadding="0" cellspacing="1">
<tr>
<td align="right" valign="top">范例:</td>
<td><select name='fl' style='width:150px'><option value='男'>男</option>
<option value='女'>女</option>
<option value='人妖'>人妖</option>
</select>
</td>
</tr>
<input type="hidden" name="dede_fields" value="fl,select" />
<input type="hidden" name="dede_fieldshash" value="" /></table>
<div align='center' style='height:30px;padding-top:10px;'>
<input type="submit" name="submit" value="提 交" class='coolbg' />
<input type="reset" name="reset" value="重 置" class='coolbg' />
</div>
</form>
</div>
</div>
</div>
</div>
<div class="right mceneter">
Powered by <a href="http://www.dedecms.com" target="_blank">DedeCMS</a> &; 2004-2009 <a href="http://www.desdev.cn" target="_blank">DesDev</a> Inc.
</div>
</body>
</html>