当我更改输入时,我想更改编辑器以显示数据库中的数据 我将获取输入的输出并将其拆分并将结果放入2 EditorFor
<input type="text" value="Set Date" id="reservationtim onchange=myFunction()>
@Html.EditorFor(model => model.StartDate, new { htmlAttributes = new { @class = "form-control" }, id = "startDate" })
@Html.EditorFor(model => model.EndDate, new { htmlAttributes = new { @class = "form-control" } , id = "endDate" })
和功能:
<script>
function myFunction() {
var date = document.getElementById("reservationtime").value;
var res = date.split("-");
model => model.StartDate = res[0];
document.getElementById("startDate") = res[0];
document.getElementById("endDate") = res[1];
}
</script>
答案 0 :(得分:0)
您正在尝试将元素引用本身设置为您想要的值。而是需要设置元素引用的value
属性:
document.getElementById("startDate").value = res[0];
此外,您似乎正在尝试在此处混合服务器端和客户端代码。请记住,在文档已由服务器处理并返回给客户端之前,不会处理JavaScript。一旦你是客户端,所有存在的只是DOM,它是由浏览器根据服务器发送的HTML文档创建的。换句话说,你使用EditorFor
或其他东西的事实完全丢失了。您所拥有的只是EditorFor
调用的结果(即HTML)。
答案 1 :(得分:0)
您应首先更正HTML,因为未正确指定某些属性。
<script>
function myFunction() {
var date = document.getElementById("reservationtime").value;
var res = date.split("-");
model => model.StartDate = res[0];
if(res.length>1) {
document.getElementById("StartDate").value = res[0];
document.getElementById("EndDate").value = res[1];
// if you still want to set ID properties instead of using default use following
// document.getElementById("StartDate").value = res[0];
// document.getElementById("EndDate").value = res[1];
}
}
</script>
我不知道你为什么要为上面两个编辑器明确设置id。默认情况下,它们将属性名称作为ID。所以我建议为它编写脚本。
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]