我在剃刀视图.cshtml中具有以下模型绑定
@Html.TextBoxFor(m => m.cDate,
new{
@id = "textd",
@type = "text"
}
)
我想在绑定之前调用javascript函数,如下所示
@Html.TextBoxFor(m => updatedateFormat(m.cDate),
new{
@id = "textd",
@type = "text"
}
)
updatedateFormat是一个javascript函数。
我确实有很多只与c#有关的选项,但是我很好奇我们可以在模型绑定中使用javascript函数。
我尝试如下
@{
string ccDate= @Convert.ToString("updatedateFormat(@Model.cDate)");
}
@Html.TextBoxFor(m => ccDate,
new
但不起作用
请指教。
谢谢
参考方案
由于不可能触发Javascript
函数,因此在呈现输入元素或任何其他html
元素时,可以使用document.ready
事件来实现所需的功能:
@Html.TextBoxFor(m =>m.cDate,
new{
@id = "textd",
@type = "text",
}
)
当文档准备好时:
$(document).ready(function () {
var ccDate= document.getElementById('textd');
updatedateFormat(ccDate);
})
或者,您可以添加一个自定义属性(例如data-onload
)来模拟加载事件:
@Html.TextBoxFor(m => m.cDate,
new{
@id = "textd",
@type = "text",
data_onload="updatedateFormat('@Model.cDate')"
}
)
当文档准备好时:
$(document).ready(function () {
$('[data-onload]').each(function(){
eval($(this).data('onload'));
});
})
如果只想格式化属性的值,则可以使用HTML帮助器中的ToString()
函数来实现:
@Html.TextBoxFor(m =>m.cDate,
new{
@id = "textd",
@type = "text",
@Value = Model.cDate.ToString("yyyy/MM/dd")
}
)
ddl在服务器中未更新-asp.net - javascript我在ASP.NET c#上工作。我有一个DropDownList。 (runat =“ server”)在$ {document).ready上,我更新了它的值:$(document).ready(function () { document.getElementById("ddl").value = "abc"; ……
ASP.NET-如何更改JSON序列化的方式? - javascript我正在使用ASP.NET通过以下查询返回Json文件:public ActionResult getTransactionTotals(int itemID) { DBEntities db = new DBEntities(); var query = from trans in db.Transactions // Linq query removed …
ASP.NET MVC中应为DataTable返回哪种数据? - javascript我想为DataTable中的每个页面创建动态加载信息。我正在尝试遵循以下示例:https://www.datatables.net/manual/server-sidehttps://www.datatables.net/manual/data来自示例的代码:$('#example').DataTable( { serverSide: t…
ASP.net WebForms-如何从代码隐藏获取html5数据属性? - javascript即时通讯试图从HtmlControl获取数据属性(数据图标)...该数据属性是通过js函数设置的,但是当页面回发时,它返回(在代码后面)一个空字符串有什么办法,任何财产,否则就可以得到它?我的代码:HTML:<button id="btnIcon" runat="server" class="btn b…
.NET C#Webbrowser填充输入,不带ID或类名 - javascript我需要在网络浏览器中填写一个输入,但这不起作用。我认为必须使用name属性来完成,但是怎么做呢?foreach (HtmlElement login in webBrowser1.Document.GetElementsByTagName("input")) { if (login.GetAttribute("name"…