首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在JQuery中可以执行“.value+=”吗?

在JQuery中可以执行“.value+=”吗?
EN

Stack Overflow用户
提问于 2018-02-11 01:44:54
回答 2查看 0关注 0票数 0

经典javascript:

代码语言:txt
复制
var myvar = document.getElementById("abc");
abc.value += "test";
abc.value += "another test";

jQuery:

代码语言:txt
复制
$("#abc").val($("#abc").val()+"test");
$("#abc").val($("#abc").val()+"another test");

有什么方法可以让jQuery更简洁,是否可以用一个隐藏的+=函数呢?我知道.val()不是一个属性,但我觉得一定有办法使这段代码更漂亮...

像这样的东西会很好:

代码语言:txt
复制
 $("#abc").valueAttribute += "test"
 $("#abc").val().content += "test"
 $("#abc").val().add("test")
EN

回答 2

Stack Overflow用户

发布于 2018-02-11 10:29:33

从jQuery 1.4开始,就可以将一个函数传递给.val()获取当前值作为第二个参数:

代码语言:txt
复制
$("#abc").val(function(i, val) {
    return val + "test";
});
票数 0
EN

Stack Overflow用户

发布于 2018-02-11 11:26:15

你可以返回原始DOM元素。

代码语言:txt
复制
 $("#abc").get(0).value += "test";

否则,你必须写一个插件

代码语言:txt
复制
 $.fn.appendVal = function (newPart) {
   return this.each(function(){ $(this).val( $(this).val() + newPart); });
 };

 $("#abc").appendVal("test");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100003483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档