我看过其他关于此的帖子,但我无法让它工作。我已经尝试了一百万种不同的方法。我想要做的就是触发一些基于输入文本框和使用默认移动模板单击按钮的控制器动态生成的 javascript。我确定我做错了。我能得到的最远的是让javascript显示在页面上但不执行。
控制器
[HttpPost]
public ActionResult Index(FormCollection Form)
{
string injectedJS = "";
if (! String.IsNullOrEmpty(Form["searchstring"]))
{
//create js
ViewBag.injectedJS = //<created js>
return View();
}
else
{
return View();
}
}
共享视图
@RenderSection("jsheader", required: false)
看法
@section jsheader{
<script type="text/javascript">
$(document).bind("pageinit", function () {
@ViewBag.injectedJS;
});
</script>
}
@using (Html.BeginForm("Index", "mycontroller", FormMethod.Post))
{
<ul data-role="listview" data-inset="true">
<li data-role="list-divider"></li>
<li>
<input type="text" name="searchstring" id="searchbox" />
</li>
</ul>
<input type="submit" id="searchbutton" autofocus="autofocus" value="Submit"
}