我想知道是否有人可以帮助我更新此处详述的代码(http://oif.eafarris.com/blog/pre-fill-cck-node-fields-based-on-a-node-re... ) 对于 Drupal 7。那篇文章中描述的功能与我希望在我的 Drupal 7 站点上执行的功能相同,但我对自己的编程不够精通。
我有一个内容类型事件。在事件的节点创建表单上,我有一个“客户端”的自动完成字段。下面是名称、地址等的附加字段。我希望在这里实现的最终结果是:
用户在自动完成客户端字段中输入客户端名称。
输入的客户端名称与现有客户端匹配并被选中。
使用所选客户端的节点 ID,然后自动填充地址字段。
我有一个带有 nid 参数的 JSON 视图,它在 URL http://domain.com/json-clients/[nid] 处吐出所需的字段。但我无法将该信息返回到表单上的正确字段。
下面是我修改后的代码,试图让它与 D7 一起工作。有人看到明显的错误并愿意提供帮助吗?
(function ($) {
Drupal.behaviors.sponsorhelper = function () {
$("input[name='field_client[und][0][nid]']").blur(function() {
nidRegEx = /\[nid:(\d+)\]/;
SponsorHelper.fill($(this).attr('value').match(nidRegEx)[1]);
})
};
SponsorHelper.fill = function(nid) {
var url = Drupal.settings.basePath + 'json-clients/' + nid;
jQuery.getJSON(url, function (data, result) {
if (result != 'success') {
return;
}
$("input[name='field_address_1[und][0][value]']")
.attr('value',data.nodes[0].node.field_address_1_value);
$("input[name='field_address_2[und][0][value]']")
.attr('value',data.nodes[0].node.field_address_2_value);
})
};
})(jQuery);
任何帮助是极大的赞赏。
谢谢。