Jquery怎么获取select选中项 自定义属性的值

Jquery怎么获取select选中项 自定义属性的值,第1张

代码如下:

HTML code

<select id="ddl" onchange="ddl_change(this)"">
   <option value="100" emoney="12" gmoney="12">日卡</option>
   <option value="102" emoney="58" gmoney="58">月卡</option>
   <option value="103" emoney="518" gmoney="518">年卡</option>
<select>

JScript code

function ddl_change(obj){
   alert($("#ddl")attr("emoney"));
}

说明:当下拉框发生改变时就会调用ddl_change方法,从而执行JS的ddl_change方法来实现。

定义和用法:

attr() 方法设置或返回被选元素的属性值。

根据该方法不同的参数,其工作方式也有所差异。

返回属性值:

返回被选元素的属性值。

1 定义一个以Attribute结尾的特性类, 特性类继承自SystemAttribute, 如下所示
[AttributeUsage(AttributeTargetsProperty, AllowMultiple=false)]
public class PrimaryKeyAttribute : SystemAttribute
{

其中AttributeTargets是一个枚举的值, 可以是: Assembly | Module | Class | Struct | Enum | Constructor | Method | Property | Field | Event | Interface | Parameter | Delegate

2 在需要使用的地方使用PrimaryKey自定义特性标签, 如下所示
[PrimaryKey(Column = "CustomerID", IsIdentity=false)]
public int ID
{


3 为了获取自定义特性的信息, 需要反射的方式获取其数据, 首先我们定义一个类来存储这些信息, 如下所示
public class PrimaryKeyModel
{
private readonly PropertyInfo propertyInfo;//外键的属性字段信息
private readonly PrimaryKeyAttribute primaryKeyAtt;//外键的特性信息


public static PrimaryKeyModel GetPrimaryKey(Type type)
{
PropertyInfo[] properties = typeGetProperties();
foreach (PropertyInfo p in properties)
{
object[] keys = pGetCustomAttributes(typeof(PrimaryKeyAttribute), true);
if (keysLength == 1)
{
return new PrimaryKeyModel(p, keys[0] as PrimaryKeyAttribute);
}
}
return null;
}

4 在Customer类中获取其特性的信息代码如下
string strReturn = stringEmpty;
//Get PrimaryKey Name
PrimaryKeyModel attribute= PrimaryKeyModelGetPrimaryKey(thisGetType());
if(attribute != null)
{
strReturn += stringFormat("PrimaryKey Name:{0} IsIdentity:{1} Column:{2}\r\n",
attributePropertyName, attributePrimaryKeyAttIsIdentity, attributePrimaryKeyAttColumn);
}

<script>
var testEle = documentgetElementById("test");
testElesetAttribute("demo");
</script>
<a href="#" id="test" demo="1" onclick="alert(thisattributes['demo']nodeValue)">(1)有</a>
<a href="#" id="test" demo="2" onclick="alert(thisattributes['demo']nodeValue)">(2)无</a>

<a class="myclass" href="" action="delete">删除</a><!--这里的action="delete"就是自定义属性-->var action = $('myclass')attr('action');<br>alert('自定义属性action的值为:'+action);attr方法可以设置和获取元素的属性

attr和prop都是Jquery对象用于设置或者获取DOM元素的函数, 比如 *** 作disabled控制按钮是否可用; 最近再 *** 作checkbox时发现, 使用attr无法生效只能使用后者 依赖于getAttribute()和setAttribute()两个函数

attribute指明的是HTML文档节点属性;

prop可以获取的是DOM节点对应的JS对象的属性, 我们可以使用诸如documentgetElementById("su")获取一个JS对象, DOM节点上的属性再这个对象上未必有, 这个对象上的属性也未必在DOM节点上显示的说明

elgetAttribute('x')
elsetAttribute('x')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12777366.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-27
下一篇 2023-05-27

发表评论

登录后才能评论

评论列表(0条)

保存