myDiagram.nodeTemplateMap.add("decision",
$(go.Node, "Auto",
new go.Binding("text", "text"),
// define the node's outer shape, which will surround the Horizontal Panel
$(go.Shape, "Rectangle",
{ fill: "yellow", stroke: "lightgray" }),
// define a horizontal Panel to place the node's text alongside the buttons
$(go.Panel, "Horizontal",
$(go.TextBlock,
{ editable: true, font: "15px Roboto, sans-serif", margin: 5, textValidation: okName},
//textValidation: okAnswer},
function okName(textblock, oldstr, newstr) {
return true;
};
我想知道如何在OkName函数之外获取newstr?我想收集所有的newstr。
谢谢!
答案 0 :(得分:1)
您的go.TextBlock
应该具有双向绑定,因此当文本被接受(验证成功)时,您的文本将保存到模型中。
e.g。
new go.Binding("text", "text").makeTwoWay()
如果您不希望将文本保存到模型中,可以将验证功能中的newstr
保存到自定义数组或任何您喜欢的内容中。
您还可以使用textblock.part.data
手动从函数中访问模型数据。