Javascript 这个jQuery代码片段可以缩短吗?

Javascript 这个jQuery代码片段可以缩短吗?,javascript,jquery,Javascript,Jquery,我刚刚开始使用jQuery,虽然下面的代码完成了这项工作,但我觉得它可以缩短 var accountAddress = $(document.createElement("input")).addClass("readOnly") .attr("contentEditable", "false").attr("id", "d_accountAddress"); $("#customerid_c").next().next().next().append(accountAddre

我刚刚开始使用jQuery,虽然下面的代码完成了这项工作,但我觉得它可以缩短

var accountAddress = $(document.createElement("input")).addClass("readOnly")
        .attr("contentEditable", "false").attr("id", "d_accountAddress");

$("#customerid_c").next().next().next().append(accountAddress);
如果不清楚,我要做的是创建新的输入标记,分配类并使其为只读,然后将新的输入两个TD定位到一些已知文本的右侧

更新:

这是我正在修改的简化HTML。我添加内容的位置用##1###2#标记

<TD id=customerid_c>
    <LABEL for=customerid>Customer</LABEL>
</TD>
<TD id=customerid_d></TD>
<TD class=ms-crm-Field-Normal>
    <LABEL>##1##</LABEL>
</TD>
<TD>##2##</TD>

顾客
##1##
##2##
是的,它可以

$('#customerid_c').nextAll().eq(2)
    .append('<input class="readOnly" id="d_accountAddress" />');

您不需要添加
contentEditable=false
。TD字段是行中的最后一个字段吗?如果是,您可以编写
$('tr:has(#customerid_c)td:last child')
是的,它是行中的最后一个。但我不希望这样。对于标记,例如
,万维网联盟(W3C)建议在HTML4中使用小写,而在XHTML中要求使用小写标记。因此,一般来说,养成到处使用小写的习惯是很好的。我以前从未见过这种语法,
#el~:eq(2)
具体做什么?我认为~用于导航到元素的子元素,在本例中是#customerid_c,eq是相等运算符,在本例中用于转到基于0的索引,所以第三个孩子,一个更干净的书写方式是$('#customerid_c').nextAll().eq(2).append('')@塔图、@used、@Kieron、@mmcgrail:该选择器在1.4.2中确实有效。所以使用1.3.2,它显然有一个bug。@Shekhar:你不能。(除非您硬编码完整ID,可能使用服务器端内联代码)
$('#customerid_c~:eq(2)')
    .append('<input class="readOnly" id="d_accountAddress" />');
$(something).attr({ id: 'd_accountAddress', type: 'text' });