【问题标题】:generating a text field dynamically on clicking previous text field using javascript使用javascript单击上一个文本字段时动态生成文本字段
【发布时间】:2013-08-22 18:20:32
【问题描述】:

我正在尝试通过单击前一个文本字段来生成一个文本字段

HTML

<input type="text" name="text1" class="XYZ"/><input type="button" value="button"/>

javascript

$(function () {
    count=2;
    var createNewField = function () {
        var $node = $('<input type="radio" name="choices" name="o" id="o" /><div class="ABC"><input class="XYZ" type="text" name="op" id="op"/></div>');

        $node.one('click', createNewField);
        $(this).after($node);
    };

    $('input.XYZ').one('click', createNewField);
});

这个脚本运行良好。问题是

我想在单击前一个文本字段时生成一个文本字段,但在这个新文本字段中,即使单击单选按钮也会生成。

其次,我如何调整生成的文本字段的位置。例如。我希望新的文本字段位于按钮之后。但是此脚本会在按钮之前生成文本字段。

希望您理解问题所在。 提前致谢。

【问题讨论】:

  • 我缩进了你的代码,但你缺少一个结束 '。假设真实代码中没有丢失它,我将其添加到似乎合适的位置。
  • 您的 $node 分配缺少结束引号。请创建一个 jsfiddle。

标签: javascript jquery html textfield


【解决方案1】:

您似乎只想要input.XYZ 上的处理程序,但您将其添加到$node 中的所有内容中。

代替

$node.one( ...

这样做

$node.find("input.XYZ").one( ...

【讨论】:

  • 定位问题呢??
  • 第二位相当模糊。您可能希望将其作为一个单独的问题,并包含更多实际案例的详细信息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多