小编Pav*_*nar的帖子

d3js接受/恢复输入值

我使用d3js填充一组显示关联数组值的文本输入字段.用户更改一些输入值.

var obj = {a: 'Hello', b: 'World'}
var kk = function(d){return d.key}
var kv = function(d){return d.value}
var upd = function(c){
    c.select('div.label').text(kk)
    c.select('div.input input').attr("value", kv)
}
var data = d3.entries(obj)
var prop = d3.select("div.container").selectAll("div.prop").data(data, kk)
upd(prop)
var eprop = prop.enter().append("div").attr("class", "prop")
eprop.append("div").attr("class", "label")
eprop.append("div").attr("class", "input").append("input").attr("name", kk)
upd(eprop)
prop.exit().remove()
Run Code Online (Sandbox Code Playgroud)


a)从DOM更新原始关联数组(相反方向)的最佳实践
b)将DOM值恢复为原始值

我目前的解决方案是
a)迭代输入字段 d3.select("div.container").selectAll("div.prop").select('div.input input').each(function(){obj[this.name]=this.value})
b)分配[]为选择数据然后返回原始数据(我没有找到像强制更新或刷新的东西)

编辑(通用)
显示关联数组值的输入字段只是一种特殊情况,您可以想象在具有用户交互的模型上应用的任何d3js布局.
但通常:
a)接受DOM中的值返回源数据
b)将DOM恢复为实际的源数据
是否有任何d3js内置支持或d3js插件?

d3.js

7
推荐指数
1
解决办法
551
查看次数

使用org.eclipse.xsd.util.XSDResourceImpl读取XSD

我成功地使用org.eclipse.xsd.util.XSDResourceImpl并处理了所有包含的XSD元素,类型,属性等来读取XSD模式.
但是当我想处理对导入模式中声明的元素的引用时,我得到null它的类型.似乎导入的模式不会被处理XSDResourceImpl.任何的想法?

    final XSDResourceImpl rsrc = new XSDResourceImpl(URI.createFileURI(xsdFileWithPath));
    rsrc.load(new HashMap());
    final XSDSchema schema = rsrc.getSchema();
    ...
    if (elem.isElementDeclarationReference()){ //element ref
        elem = elem.getResolvedElementDeclaration();
    }
    XSDTypeDefinition tdef = elem.getType(); //null for element ref
Run Code Online (Sandbox Code Playgroud)

更新:
我使导入的XSD无效,但没有异常.这意味着它真的没有被解析.有没有办法强制加载导入的XSD和主要的XSD?

java xsd

5
推荐指数
1
解决办法
239
查看次数

标签 统计

d3.js ×1

java ×1

xsd ×1