1

我在 ID 为“ ResultOutput ”的服务器控件上创建。这是一个文本框。之后,我将此控件添加到可视 webpart。我部署到共享点站点。渲染页面后,如果我看到该文本框的 ID,则 id 已更改为ct100_m_g_cb6c8826_a6e5_4169_a3ef_4bfc7dfb26c_ct100_ResultOutput。要检索服务器控件的 id,我们可以在 jquery 中使用,例如

$('<%= ResultOutput.ClientID %>').

但在这种情况下,id 正在改变,所以 jquery 无法找到该 id。为了找出修改后的 id 中是否显示了实际的 id,我使用了 like $("[id*=ResultOutput]").length,它的值为 1。所以最后我们找到了那个元素。现在我想将一些文本分配到该文本框中。我无法找到 id 动态更改的解决方案。

如果我给$("[id*=ResultOutput]").id它是给我未定义的。在 jquery 中捕获它的方法是什么?我想在文本框控件中放置文本。

4

2 回答 2

1

要获取 id 必须使用attr('id')in jquery。 $("[id*=ResultOutput]").attr('id')给你身份证。如果要更改该文本框控件中的文本,则必须使用如下所示。

var myboxid = $("[id*=ResultOutput]").attr('id'); $('#'+myboxid).val("yourvalue");

于 2012-12-07T10:29:58.717 回答
0

jQuery 工厂方法通常返回集合/数组。

所以像下面一样访问它

  $("[id*=ResultOutput]")[0].id

另外,我不确定您的 id 选择器中是否缺少 #符号。请包含并重试。

 $('#<%= ResultOutput.ClientID %>').
于 2012-12-07T10:29:30.207 回答