gpt4 book ai didi

javascript - javascript、vb.net 中的 "Expression does not produce a value"

转载 作者:行者123 更新时间:2023-11-30 16:37:30 25 4
gpt4 key购买 nike

在“交易”模型的创建 View 中,我定义了一个 javascript 函数,它在单击按钮时在列表属性中创建一个新对象。

我收到错误“表达式不产生值”。我不期待一个值,我只需要在列表中创建一个新的空对象,所以我不明白这个错误。

javascript 在我看来,将新 Period 添加到列表的行会抛出错误:

<script type="text/javascript">
function addRow() {
@Model.Periods.Add(New DealPeriod());
...
}
</script>

“交易”模式:

Public MustInherit Class Deal

...

<Display(name:="Periodos")>
Public Property Periods As New List(Of DealPeriod)

最佳答案

这里有两个问题——覆盖问题“表达式不产生值”中的问题:

这里的@符号的意思是“将下面的结果输出到http响应流”

由于 List.Add() 返回 void,因此没有任何内容可发送到响应流,因此它会向您提供该错误消息。

换句话说,@ 需要一个值,而 List.Add() 不会生成一个值。

第二个问题是,您似乎将服务器端执行与客户端执行混合在一起(请注意,我没有说服务器端/客户端代码,这与您拥有它的方式类似) .看起来您想在调用“addRow”时添加一个新的“DealPeriod”——这根本不是它的工作原理。 VB.Net 代码在服务器上运行,javascript 代码在客户端、浏览器中运行。它们没有链接在一起。

有很多方法可以链接它们,例如 ajax 调用或信号器。

关于javascript - javascript、vb.net 中的 "Expression does not produce a value",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32506740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com