所以我有一个剃刀观点:
@{
int i=1;
foreach(var story in Model.Storylines)
{
<span style="float:left;">Storyline @i</span> <span style="float:right; margin-right:5px;">Character Count: @story.CharCount</span><br /><br />
<textarea id=@("entry"+@i) rows="5" style="width:730px; overflow:auto;">@story.Description</textarea><br /><br />
i++;
}
}
Run Code Online (Sandbox Code Playgroud)
因此,当页面最初加载时,具有id entry1的textarea具有类似"this is a story"的描述.一旦我在该文本区域中输入内容,然后点击一个按钮,其唯一功能是:
alert($("#entry1").text());
Run Code Online (Sandbox Code Playgroud)
我仍然得到"这是一个故事".为什么textarea不会更新我输入的文本?
我是PHP的新手.我想创建一个脚本来检查连续的所有复选框,但我被卡住了.
问题
代码不适用于循环.
这是我的输出
当我选中Opinion列下的复选框时,我想自动检查同一行中的所有复选框.
这是我的代码
为每行呈现数据和复选框,我使用服务器端PHP循环
JavaScript的:
<script>
$('.allcb').on('click', function() {
$(this).parent().parent().parent().parent().find('.chk').prop('checked', this.checked);
});
</script>
Run Code Online (Sandbox Code Playgroud)
HTML:
<?php
for ($i=0; $i<count($opinion); $i++) {
//if ($opinion[$i] == "")continue;
?>
<tr>
<td>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- <input type="text" name="opinion[]" value="<?php //echo $opinion[$i]?>" size="28" readonly="readonly" />-->
<input type="checkbox" name="opinion[]" class="allcb" data-child="chk" value="<?php echo $opinion[$i]?>" />
<?php echo $opinion[$i]?>
</td>
<td>
<input type="checkbox" name="action[]" class="chk" value="<?php echo $action[$i] ?>" />
<?php echo $action[$i] ?>
</td>
<td>
<input type="checkbox" name="long_term[]" class="chk" value="<?php echo $long_term[$i] ?>" /> …Run Code Online (Sandbox Code Playgroud) 更新:
我只用了一些相当简单的修改就解决了这个问题,请参阅下面的自我回答.
原始问题:
我有一个ASP.NET Web应用程序,它使用Windows身份验证和Forms身份验证.Forms身份验证定义为authentication modeWeb.config(参见下面的摘录).在IIS 7中,在Web应用程序(AKA虚拟目录)级别,禁用匿名身份验证,并启用Windows身份验证.
在.NET 1.1到.NET 4.0和IIS6/7后,通过Windows身份验证成功认证/ 7.5,但通过窗体身份验证(创建窗体身份验证票/饼干)认证前,Global.Application_AuthenticateRequest()看到那Request.IsAuthenticated是false.而一旦Request.IsAuthenticated成为true该System.Web.HttpContext.Current.User类型是System.Security.Principal.GenericPrincipal(和User.Identity是System.Web.Security.FormsIdentity)
在IIS7服务器上安装.NET 4.5后,此行为已更改.未对Web.config文件进行任何更改,并且未对IIS手动进行任何更改.我做的唯一改变是安装.NET 4.5.卸载4.5并重新安装4.0后,该行为恢复为"正常".
我注意到的不同行为是,在通过Windows成功进行身份验证之后,但在通过表单进行身份验证之前(尚未创建表单身份验证票证),Application_AuthenticateRequest现在显示的Request.IsAuthenticated是true.此外,System.Web.HttpContext.Current.User.Identity现在System.Security.Principal.WindowsIdentity(而不是FormsIdentity).
Request.IsAuthenticated = true?)我一直在搜索Msft文档几个小时..他们关于混合Windows和Forms auth的所有信息似乎都已过时(2004-ish),而且.NET 4.5的更改细节在这个特定领域相当稀疏.
摘自web.config :(是的,default.aspx是故意的,在这种情况下我不使用login.aspx,但它已经工作了5年以上,以及所有以前的.net版本).
<authentication mode="Forms">
<forms name=".ASPXAUTH" protection="All" timeout="200" loginUrl="default.aspx" defaultUrl="~/default.aspx" />
</authentication>
Run Code Online (Sandbox Code Playgroud)
摘自Global.asax.cs:
protected void Application_AuthenticateRequest(Object sender, EventArgs e)
{
if …Run Code Online (Sandbox Code Playgroud) 今天在Internet Explorer中发现了一个明显的错误,但无法通过研究进行验证.有没有人遇到这个和/或可以解释一下?
概要
Internet Explorer(至少9和11)并不总是触发(或处理?)提交事件.注意到稍微快速单击提交按钮导致某些提交被跳过的情况.Chrome和Firefox中未注意到此问题.
测试用例
submit,然后返回falseclick检测结果
Firefox和Chrome按预期工作:
click
submit
click
submit
Run Code Online (Sandbox Code Playgroud)
Internet Explorer做的事情很奇怪(像往常一样):
click
submit
click
Run Code Online (Sandbox Code Playgroud)
没有第二次提交!仅使用IE,不会调用客户端处理程序,Fiddler会在生产环境中显示请求永远不会发生.(请注意,此示例代码实际上不会POST请求,因为return false.)
工作代码段:请向下滚动并单击"运行代码段",然后尝试在"提交"按钮上快速双击,并观察结果.的jsfiddle
feedback = function (t) {
$div = $("<div class='line'></div>");
$div.html(t);
$("#feedback").append($div);
};
$("#theForm").on("submit", function (e) {
feedback("submit");
return false; // don't actually submit form, or SO chokes
});
$("#btnSubmit").on("click", function (e) {
feedback("click");
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id='theForm' action="DISABLED BY RETURN FALSE" method="POST">
<input type='text' />
<input id='btnSubmit' type='submit' …Run Code Online (Sandbox Code Playgroud)我正在尝试在ASP中更新数据库(Oracle通过ODBC):
<%@ Page LANGUAGE="VB"%>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Configuration" %>
<%
Dim objConn As SqlConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("ODBCNAME").ConnectionString)
'example query
Dim strSQL As String = "update foo set bar='BAZ'"
objConn.Open()
Dim objCmd As New SqlCommand(strSQL, objConn)
Try
objCmd.ExecuteNonQuery()
Response.Write("Record updated")
Catch e As Exception
Response.Write(e.ToString)
End Try
%>
Run Code Online (Sandbox Code Playgroud)
web.config具有以下内容:
<connectionStrings>
<add name="ODBCNAME" connectionString="server=ExampleServerName;" providerName="System.Data.Odbc" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
当我执行这个时,我得到了objCOnn.Open()行的错误:
System.ComponentModel.Win32Exception: The network path was not found.
Run Code Online (Sandbox Code Playgroud)
ODBC数据源是创建,测试和使用其他独立应用程序(闭源),我可以通过ODBC设置测试连接,这是有效的.
如何从我的代码连接到此数据库?或者我该如何调试此问题?
在 Angular 2 中,我如何使用反射(或我在这里称之为的任何名称)来使用管道?我有一个带有管道名称的字符串(如“小写”),我想仅使用该字符串调用管道。
例如:
JSON
var cols = [{ dataProperty: "city", pipeName: "lowercase"},{ dataProperty: "state", pipeName: "uppercase"}]
var rows = [{city: 'Walla Walla', state: 'wa'}];
Run Code Online (Sandbox Code Playgroud)
HTML(Angular 组件摘录)
{{ rowData[col.dataProperty] | this.[col.pipeName] }}
Run Code Online (Sandbox Code Playgroud)
但是这段代码不起作用。
我用什么来代替this.[col.pipeName]动态调用uppercaseor lowercase(或我在 中定义的任何管道pipeName,假设它是我的代码可以访问的管道)?
刚刚从 jQuery 1.3.2 升级到 1.8.2,发现在 1.3.2 中工作的几个功能不再工作。我已经修复了大部分问题,但仍坚持这一点:
我需要根据表格单元格中的前几个字符进行搜索(“开头为”搜索),但此代码在最新版本的 jQuery 中不再有效:
var matchingElements = $("#tblSelect1>tbody>tr>td:first-child[innerText^='" + text + "']");
Run Code Online (Sandbox Code Playgroud)
我怀疑这与以下事实有关:过去像属性一样工作的一些东西现在变成了属性 - innerText 是一个属性(我认为),所以它可能与属性开头选择器表示法不兼容:[attr^='value']
我不想使用,:contains因为我只想要 insideText 以搜索开头的元素text
想法?谢谢!
约束:我没有使用MVC,而是在我的Web应用程序中使用了常规的.aspx文件。也不使用母版页-每个页面都是不同的野兽,因此该解决方案不适合我。
我为捆绑和缩小而阅读的大多数示例都需要一些特殊的MVC标记,或者要求您先识别捆绑的脚本/样式表,然后再引用这些捆绑。我想避免每次在.aspx页中添加或修改.js引用时都重新编译DLL。
我对阅读Msft文档有些困惑。是否有一种方法(如ASP.NET控件)可以包装一系列script标签(或linkCSS的标签)来动态创建和使用包?我不想重新发明轮子,而是认真考虑创建自己的用户控件/自定义控件来处理这个问题。还有其他选择吗?
例如,寻找这样的东西:
<asp:AdHocScriptBundle id="mypage_bundle" runat="server">
<script type="text/javascript" src="~/scripts/mypage1.js"></script>
<script type="text/javascript" src="~/scripts/mypage2.js"></script>
<script type="text/javascript" src="~/scripts/mypage3.js"></script>
</asp:AdHocScriptBundle>
Run Code Online (Sandbox Code Playgroud)
启用捆绑后,将自动用类似于以下内容的asp:AdHocScriptBundle单个script标签替换的内容:
<script type="text/javascript" src="/webappname/bundles/mypage_bundle.js?v=dh120398dh1298dh192d8hd32d"></script>
Run Code Online (Sandbox Code Playgroud)
并且当捆绑功能被禁用时,通常按以下方式输出内容:
<script type="text/javascript" src="/webappname/scripts/mypage1.js"></script>
<script type="text/javascript" src="/webappname/scripts/mypage2.js"></script>
<script type="text/javascript" src="/webappname/scripts/mypage3.js"></script>
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?
无论如何即将推出自己的游戏,但如果已经有解决方案,请分享,谢谢!
问题:我应该避免使用<br/>断行来支持将内容包裹在 中<p></p>吗?什么时候可以使用<br/>(如果有的话)?
它们在我所说的典型桌面浏览器中都可以正常工作,但是其中一个在辅助功能和移动设备上工作得更好吗?
当前推荐的最佳实践是什么?(它似乎是一个移动的目标。)
例如,在做这样的事情时:
使用<br/>从输入单独的标签
<label for="txtUsername">Username</label><br/>
<input type="text" id="txtUsername" autocomplete="off" maxlength="50" spellcheck="false"/>Run Code Online (Sandbox Code Playgroud)
使用<p></p>从输入单独的标签
<p><label for="txtUsername">Username</label></p>
<p><input type="text" id="txtUsername" autocomplete="off" maxlength="50" spellcheck="false"/></p>Run Code Online (Sandbox Code Playgroud)
我已经搜索了一点,似乎对此没有 100% 的共识,我以为我会打出精彩的 SO 社区..谢谢!
如何将 an 强制转换(或转换,如果强制转换不可能或不合理)object为其运行时类型?我可以runtimeType使用反射,但不知道如何使用List<string>-property.GetValue我知道我可以明确地这样做as List<String>,但这是针对一种软代码引擎,其中类型直到运行时才知道。
如有任何帮助,我们将不胜感激 - 谢谢!(但请寻找代码解决方案,而不是“你不应该这样做......”答案)
// trimmed-down example class
class Bus { public List<string> Passengers {get;set;} }
// create new instance of class
var obj = new Bus();
// get property value using reflection
var listPropertyName = "Passengers";
var property = GetType(obj).GetProperty($"{listPropertyName}");
var runtimeType = property.PropertyType;
// returns object, but I want List<string> instead
// (or whatever it is; could be different types like T, List<T>, etc.)
var …Run Code Online (Sandbox Code Playgroud) 如何传递$(this).find('.option')和$(this).find('.prev_next')对Slick.js?以下产生:Syntax error, unrecognized expression: [object Object]:not(.slick-cloned) in jquery-2.1.0.js:1429
http://jsfiddle.net/frank_o/Lr30ngo1/4/
$('.test').each(function () {
var option = $(this).find('.option'),
prev_next = $(this).find('.prev_next');
$(this).slick({
slide: option,
appendArrows: prev_next,
prevArrow: '<a>Previous</a>',
nextArrow: '<a>Next</a>'
});
});Run Code Online (Sandbox Code Playgroud)
<link href="https://rawgit.com/kenwheeler/slick/master/slick/slick.css" rel="stylesheet"/>
<div class="test">
<div class="prev_next"></div>
<div class="option">
<p>Test</p>
</div>
<div class="option">
<p>Test</p>
</div>
</div>
<div class="test">
<div class="prev_next"></div>
<div class="option">
<p>Test</p>
</div>
<div class="option">
<p>Test</p>
</div>
</div>
<div class="test">
<div class="prev_next"></div>
<div class="option">
<p>Test</p>
</div>
<div class="option">
<p>Test</p>
</div>
</div>
<script …Run Code Online (Sandbox Code Playgroud)在我的Java时代,我习惯于.Equals()进行比较而不是==(至少在我知道/已经测试过我所调用的对象是否为.Equals()空的情况下).
我刚刚遇到一些C#.NET代码的问题,因为它编译好了,因为它编译好了,但是在运行时它总是返回false,但我对它为什么编译有点困惑,有人可以解释一下吗?(我猜它可能与Equals()继承有关object,但没有看到一个很好的参考).
故事:我有一个用于过滤数据库查询的类,称为WorkFilter,我转换过滤器引擎以支持多值过滤器(而不是单值过滤器).因此,每个过滤器字段属性WorkFilter都是从转换String为List<String>,并且我转换了大部分代码(除了我错过的这一个案例除外)来处理这个问题,并且在我注意到某个条件从未发生之前它已经很好了true.
Filter类看起来像这样:
public class WorkFilter
{
public List<String> RecordType { get; set; }
public List<String> Product { get; set; }
... etc ...
}
Run Code Online (Sandbox Code Playgroud)
"坏"代码是这样做的:
if (workFilterInstance.RecordType != null && workFilterInstance.RecordType.Equals("REQUEST"))
{
// code that never gets fired because List<String> never equals String value
}
Run Code Online (Sandbox Code Playgroud)
我修复它来执行此操作(基本上):
if(workFilterInstance.RecordType != null && workFilterInstance.RecordType.Contains("REQUEST"))
{
// now this can handle …Run Code Online (Sandbox Code Playgroud)