【问题标题】:Use link with image in Javascript在 Javascript 中使用带图像的链接
【发布时间】:2016-05-07 11:34:48
【问题描述】:

首先我想说我是Javascript的初学者,所以我无法正确编辑我的函数。

现在我有可点击的文本来删除行,但我想使用图像而不是文本。

这是函数的一部分:

...
var removeRow = $.fn.optionTest.createColumn($("<a>", options.removeLinkOptions).text('Remove Row'));
row.append(id).append(label).append(from).append(to).append(removeRow);

我无法获得正确的语法,我尝试过类似的方法,但没有成功...

var removeRow = $.fn.optionTest.createColumn($("<a>", options.removeLinkOptions).src("http://linktoimage.com/img.jpg"));

感谢您的理解和帮助!

更新

后来我在下面使用removeRow,它有href: 'javascript:;',也许这就是为什么不起作用?

  $.fn.optionTest.defaults = {
    clearOnChange: false,
    actionId: '#action',
    indexOptions: {
      class: 'div-format-test'
    },
    rowOptions: {
      id: 'option',
      class: 'div-format',
      tag: 'tr'
    },
    fromOptions: {
      name: 'from',
      type: 'text',
      value: 'from',
      size: 20
    },
    toOptions: {
      name: 'to',
      type: 'text',
      value: 'to',
      size: 20
    },
    removeLinkOptions: {
      class: 'removeRow',
      href: 'javascript:;'
    }
  };

现在我已经更改了如下代码:

var removeRow = $.fn.optionTest.createColumn($("<img>", options.removeLinkOptions).src("http://www.somelink.com/image.png"));

但似乎有错误的语法行现在根本没有出现......

【问题讨论】:

  • &lt;a&gt; 更改为&lt;img&gt; 不起作用吗? var removeRow = $.fn.optionTest.createColumn($("&lt;img&gt;", options.removeLinkOptions).src("http://linktoimage.com/img.jpg"));
  • @AdamKonieska 感谢您的回答,但它不起作用,请查看 dev35000 回答的 cmets 的更多详细信息。
  • 您有 JS Fiddle 或其他可以看到更多代码和相应 HTML 的东西吗?这将使人们更容易排除故障。

标签: javascript php image function hyperlink


【解决方案1】:

使用&lt;img&gt; 代替&lt;a&gt; 来获取图像。 &lt;a&gt; 用于链接。 谢谢

【讨论】:

  • 你需要用`包装html代码,即`&lt;img&gt;`以便SO标记显示它
  • @ern 是正确答案,只是没有用` 格式化,所以你看不到代码。
  • 感谢您的回答,但它不起作用...更改后它的行根本不出现(行是通过 javascript 生成的)。
【解决方案2】:

除了已经提到的将&lt;a&gt;更改为&lt;img&gt;之外,您还需要设置属性才能更改图像源。使用 .attr('src','...') 而不是 .src('...') 应该可以解决它。

改变这个:

var removeRow = $.fn.optionTest.createColumn($("<img>", options.removeLinkOptions).src("http://www.somelink.com/image.png"));

到这里:

var removeRow = $.fn.optionTest.createColumn($("<img>", options.removeLinkOptions).attr("src","http://www.somelink.com/image.png"));

这应该可以解决您的问题。希望对您有所帮助!

【讨论】:

    猜你喜欢
    • 2015-07-02
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-27
    • 1970-01-01
    相关资源
    最近更新 更多