尝试制作一个make generic选择"控件",我可以动态添加元素,但我无法让函数正常工作.
这就是我的开始.
$select = $("<select></select>");
$select.addOption = function(value,text){
$(this).append($("<option></option>").val(value).text(text));
};
Run Code Online (Sandbox Code Playgroud)
这种精细单独工作,但随时$select
被.clone(true)
"ED的addOption()
功能丧失.
这是我的对象方法,但功能仍然不起作用.
function $selectX() {
return $("<select></select>");
}
$selectX.prototype.addOption() = function(value,text){
$(this).append($("<option></option>").val(value).text(text));
};
Run Code Online (Sandbox Code Playgroud)
Hack解决方案是在创建后手动添加该功能:
$nameSelect= new $selectX;
$nameSelect.addOption = function(value,text){
$(this).append($("<option></option>").val(value).text(text));
};
Run Code Online (Sandbox Code Playgroud)
我吠叫错了树吗?
向jQuery添加新方法您需要使用jQuery.fn.methodName
属性,因此在这种情况下它将是:
jQuery.fn.addOption = function (value, text) {
jQuery(this).append(jQuery('<option></option>').val(value).text(text));
};
Run Code Online (Sandbox Code Playgroud)
但请记住,这addOption
可以通过任何$()
呼叫的结果访问.
归档时间: |
|
查看次数: |
383 次 |
最近记录: |