首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >空间jQuery insertAfter()故障

空间jQuery insertAfter()故障
EN

Stack Overflow用户
提问于 2013-10-28 18:42:14
回答 2查看 170关注 0票数 0
代码语言:javascript
复制
var lastname = jQuery('[name="dc_contributor_author_first_'+i+'"]');
if (lastname==null)
    exit;
var orderbox = "<td nowrap='nowrap'><input type='text' size=1 id='author_order_"+i+"' value="+i+" onchange=updateBoxes(this.value,"+i+")></td>";
jQuery(orderbox).insertAfter(lastname.parent());

结果为

代码语言:javascript
复制
<input type="text" )="" 1="" onchange="updateBoxes(this.value," value="1" id="author_order_1" size="1">

但是,当我将空间从updateBoxes中移除为"onchange=updateBoxes(this.value,"+i+")"函数时,它可以正常工作,结果如下。为什么?

代码语言:javascript
复制
<input type="text" onchange="updateBoxes(this.value,1)" value="1" id="author_order_1" size="1">
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-28 19:00:10

试着改变:

代码语言:javascript
复制
var orderbox = "<td nowrap='nowrap'><input type='text' 
size=1 id='author_order_"+i+"' value="+i+" 
onchange=updateBoxes(this.value,"+i+")></td>";

至:

代码语言:javascript
复制
var orderbox = "<td nowrap='nowrap'><input type='text' 
size='1' id='author_order_"+i+"' value='"+i+"' 
onchange='updateBoxes(this.value,"+i+")'></td>";

正确的属性引用可能对jQuery解析器更友好。

票数 1
EN

Stack Overflow用户

发布于 2013-10-28 18:48:07

不确定lastname = if(lastname==null) exit;是什么意思,但是应该如何创建和插入这些元素:

代码语言:javascript
复制
var td  = $('<td />', {
        'nowrap':'nowrap'
    }),
    inp = $('<input />', {
        type  : 'text',
        size  : '1',
        id    : 'author_order_'+i,
        value : i,
        on    : {
                change: function() {
                    updateBoxes(this.value, i);
                }
        }
    });

$('[name="dc_contributor_author_first_'+i+'"]').parent().after(td.append(input));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19642628

复制
相关文章

相似问题

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