【问题标题】:set value of html element with jquery plugin使用 jquery 插件设置 html 元素的值
【发布时间】:2011-03-01 23:35:40
【问题描述】:

我正在寻找一个 jquery 插件,它将检查元素的类型并根据元素通过 html() 或 val() 或 text() 设置其值。有这样的吗?有一个通用插件来设置 html 元素的值会很棒。

【问题讨论】:

  • Collins:你遇到过什么 jQuery 无法处理的问题?

标签: javascript jquery plugins jquery-plugins


【解决方案1】:

我认为您不需要为此使用插件,但您可以编写一个快速的 jQuery 扩展:

$.fn.set_val = function(value) {
    switch ( this[0].nodeName.toLowerCase() ) {
    case 'input':
        $(this[0]).val(value);
        break;
    default:
        $(this[0]).html(value);
        break;
    }
};

那么你可以这样称呼它:

<input type="text" name="foo" id="foo" value="" />
<div id="bar"></div>
<script type="text/javascript">
    $(document).ready(function() {
        $('#foo').set_val('hello');
        $('#bar').set_val('goodbye');
    });
</script>

您可以根据需要为 switch 语句中的不同 HTML 元素添加更多条件。 http://jsfiddle.net/hans/4T3x5/

【讨论】:

  • 谢谢你——正是我需要的。不过想知道,“jquery 扩展”和“jquery 插件”有什么区别?
  • 在我看来,jQuery 插件通常也是扩展。插件只是“可插入的”——这意味着你可以下载一个插件文件,将它添加到任何 HTML 中,然后一切都可以正常工作了。扩展只是可能特定于特定项目的代码片段,不容易移植到其他项目。
猜你喜欢
  • 1970-01-01
  • 2011-08-11
  • 2022-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多