我有一个包含初始值的表。用户可以过滤表上的数据,并且表应该刷新。我无法通过淘汰赛做到这一点。
查看:
<tbody id="tblMultiEdit" data-bind="foreach: UUTs">
<tr>
<td data-bind="text: SerialNumber"></td>
<td><input type="checkbox" data-bind="checked: (ReqDowngrade == 'Y' ? 1 : 0)" /></td>
</tr>
</tbody>
查看模型:
function ViewModel(UUTs) {
var self = this;
self.UUTs = UUTs;
};
初始绑定:
var viewModel = new ViewModel(@Html.HtmlConvertToJson(Model));
ko.applyBindings(viewModel);
Ajax调用以获取新表值:
function search() {
$("#btnSearch").click(
function () {
$('#image').hide()
$.ajax({
type: 'GET',
url: "@Url.Action("search", "UUTs")",
dataType: 'json',
data:
{
lab: $("#drpLab").val()
},
success: function (data) {
var viewModel = new ViewModel(data);
ko.applyBindings(viewModel);
}, error: function (ex) {
toastr.error('Failed to retrieve search results, please check your network connection.' + ex)
}
})
}
)
}
调试我可以在Ajax调用的成功方法上看到JSON数据。我该怎么做才能刷新数据?
答案 0 :(得分:0)
首先将UUT声明为observableArray,然后根据需要对其进行更新。 您应该更新要绑定的可观察数组,而不是重新声明它。
<xsl:template match="xsd:element">
<xsl:element name="xsd:element">
<xsl:attribute name="name">balisesXrm</xsl:attribute>
<xsl:attribute name="type">t:balisesXrmType</xsl:attribute>
</xsl:element>
<xsl:copy>
<xsl:if test="not(parent::xsd:schema)">
<!-- ... on ajoute les maxOccurs ...-->
<xsl:attribute name="maxOccurs">unbounded</xsl:attribute>
</xsl:if>
<!-- ... on ajoute l'attributeGroup "attributsXrm" en ref ...-->
<xsl:attribute name="ref">attributsXrm</xsl:attribute>
<!-- ... on copie tout en ne touchant pas au maxOccurs (pas besoin de spécifier ref pcq aussi là) -->
<xsl:apply-templates select="node()| @*[not(name() = 'maxOccurs')]" />
</xsl:copy>
因此,在ajax成功回调中,您应该执行以下操作:
def receivers(self):
return ('adam', 'tom', 'mel')
for receiver in email.receivers():
print('we send email from'.capitalize(), self.sender, 'to', receiver.title(), 'and the subject is',
self.subject, 'finally the massage is', self.message)