【问题标题】:Turn text input into image将文本输入转换为图像
【发布时间】:2011-05-12 12:28:49
【问题描述】:

我有一个输入字段,用户可以在其中插入以逗号分隔的关键字。我想生成一个带有 src 关键字的图像,默认文件扩展名为 .png。图片是根据预期的关键字命名的,因此这里不会创建图片文件。

例如,一个列表:

[小狗、小猫、气球、饼干]

输入带有图片的关键字后,该内容的小图标会在层次结构的另一个位置弹出。

我已经对 jquery 足够熟悉,可以使用类似的技巧,但我不确定如何处理逗号分隔的列表部分。我可以获取输入字段的 value 属性,然后将图像的 src 设置为该值,作为变量。但是如何仅捕获逗号之间的内容是主要问题。 (逗号后的空格无关紧要)

【问题讨论】:

  • 我并没有完全理解这个场景......那么,一旦在输入文本中输入balloon, cookie这个词会发生什么?它会弹出气球图像吗?饼干图像?两个都?还是没有?

标签: jquery input attr


【解决方案1】:

您可以进行拆分/修剪/映射:

var words = [];
jQuery.each(jQuery.trim(jQuery("#input").val()).split(","), function(index, value){ words.push(jQuery.trim(value));
});

这会给你一个很好修剪的单词数组。

【讨论】:

  • @TheSuperTramp - 第二个。第一个只会删除整个输入字符串周围的空格。第二个是需要的,因为它会修剪输入字符串的第一个和最后一个单词。
  • @Femi 感谢您的深入回答,因此: $('img').attr("src", words+'.png');充实我正在寻找的其余效果? (取单词并将其用作 src,添加必要的扩展名。)
  • 好吧,words 将是一个数组:您需要像 $('img').attr("src", words[0]+'.png'); 这样的东西来获取第一个单词的图像,一直到 $('img').attr("src", words[words.length-1]+'.png'); 来获取图像最后一句话。
  • @Femi - 在这种情况下,我想使用循环来渲染数组中的每个字符串?
  • 循环是对的:我假设你可以有多个单词。
猜你喜欢
  • 2016-11-24
  • 2010-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-20
相关资源
最近更新 更多