gpt4 book ai didi

c# - WebMatrix 填充属性和 JavaScript 读取属性未产生预期结果

转载 作者:行者123 更新时间:2023-11-28 09:36:31 24 4
gpt4 key购买 nike

我在使用以下代码时遇到问题:

CSHTML 文件中的部分:

                        @if(errorMessage != "")
{
err="err";
}
else
{
err="";
}
@if(errorMessage == "")
{
foreach(var row in db.Query(stringCompiler, EntryID, POIName, DateLastModified, Gender, Race, Height, Weight, HairColor, EyeColor, DOB, Age, SS, DL, DOC, VehicleTag, FBI, Officer, HomePhone, CellPhone, CellPhone2, CellPhone3, POICautions, WorkPhone, WeightedAggregate, Address, AdditionalDescriptors, Aliases, SourceOfInformation, AddressInformation, KnownAssociates, VehicleDescription, Comments, SummarizedIncidents, AllCellPhones, AllPhones, betDOB1, betDOB2, betDLM1, betDLM2, betAge1, betAge2, POILastName, SearchAll))
{
<div class="searchResult">
<table style="background-color: #beebeb;">
<tr>
<td class="entryLabel">ENTRY ID</td>
<td class="entryLabel">FIRST NAME</td>
<td class="entryLabel">LAST NAME</td>
<td class="entryLabel">DATE LAST MODIFIED</td>
<td class="entryLabel">DOB</td>
<td class="entryLabel">AGE</td>
<td class="entryLabel">ADDRESS</td>
<td class="entryLabel">VEHICLE TAG#</td>
<td class="entryLabel">OFFICER</td>
<td class="entryLabel">HOME PHONE</td>
<td class="entryLabel">CELL PHONE</td>
<td class="entryLabel">WEIGHTED AGGREGATE</td>
</tr>
<tr>
<td class="entry">@row.EntryID</td>
<td class="entry">@row.POIName</td>
<td class="entry">@row.POILastName</td>
<td class="entry">@row.DateLastModified</td>
<td class="entry">@row.DOB</td>
<td class="entry">@row.Age</td>
<td class="entry">@row.Address</td>
<td class="entry">@row.VehicleTag</td>
<td class="entry">@row.Officer</td>
<td class="entry">@row.HomePhone</td>
<td class="entry">@row.CellPhone</td>
<td class="entry">@row.WeightedAggregate</td>
</tr>
<tr>
<td colspan="13" style="text-align: center;"><form method="post" action="/ComputeLookupToVAndE.cshtml"><input type="hidden" name="veEntryID" hidden="hidden" readonly="true" value="@row.EntryID" /><br/><input type="submit" value="View & Edit" class="btn3" style="height: 40px; width: 100px;" /><br/><br/></form></td>
</tr>
</table>
</div><br/>
ResultCount += 1;
}
<input type="hidden" id="ResultCount" value="@ResultCount" />
<input id="err" type="hidden" value='@err' />
}

JavaScript 文件中的部分:

$(document).ready(function () {
if ($("#err").val() == "err")
{
$("#searchForm").attr('action', "/LookUpEntry.cshtml#top");
}
else
{
$("#searchForm").attr('action', "/LookUpEntry.cshtml#searchList");
}
});

显然,如果变量 errorMessage 中存储了任何错误消息,我会在 C# 渲染页面之前尝试将隐藏输入元素的值更改为“err”。

一旦完成,JavaScript 应该读取这个值,然后如果它是“err”,则更改表单的操作属性以附加“#top”(对于命名 anchor ,因此页面上的加载位置会根据是否更改)有错误消息或要查看的结果),否则应更改表单的操作属性(仍然通过 JavaScript)以附加 #searchList)。

知道为什么 JavaScript 和 C# 不能很好地协同工作吗?我得到的错误是随意的(就像它第一次不起作用,然后根本不起作用),无论如何,根据下面的代码,它仍然永远不会去(#top),尽管在尝试一些事情时在这个确切的编码之前(我不记得它们到底是什么),如果出现错误,有时(尽管不是第一次)会转到顶部。

为什么 jQuery 没有完成它的工作?看来这对我应该有用......

有什么想法吗?

感谢您的帮助

最佳答案

嗯,我想我已经弄清楚了,并且我认为它确实有道理:

它确实改变了它应该的值,但是 Action (表单[或者更确切地说,我看待它的方式]如何处理发布的数据)已经被设置为无论结果如何它都会去的地方当前搜索的。简而言之:落后了一步。当我单击搜索并生成错误消息时,它将按预期重写操作,但当然,它只会在下一次搜索时生效,而不是在当前搜索时生效,因为在上一次提交时已经确定了。

我的代码有什么问题吗?语法上没有什么问题,方法论(逻辑)是错误的。

关于c# - WebMatrix 填充属性和 JavaScript 读取属性未产生预期结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12963039/

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