繁体   English   中英

使用javascript调用元素内部的部分视图

[英]Call partial view inside element with javascript

我有一个称为ValidarLogueo的函数,该函数对于普通用户将返回0,对于管理员用户将返回1。 我正在尝试做这样的事情,但这给了我一个不好的编译常量值错误。

<input id="Logueo" value="Login" class="btn btn-info btn-block" onclick="javascript:validarLogueo() == 0? @Url.Action('VistaViandasPersonal', 'Menu'): @Url.Action('VistaAdministrador', 'Menu')">

我现在以这种方式在.js中呈现页面,但是由于URL保留在localHost中而不是localHost / Menu中,因此这不是我需要的

 $('body').load(url + '/Menu/VistaViandasPersonal');

我能做些什么来实现这一目标。 提前致谢。

如果您手动扩展生成的代码,将会看到您正在尝试注入字符串常量 ,但没有包括定界引号。 @Url.Action调用周围添加单引号。

例如

<input id="Logueo" value="Login" class="btn btn-info btn-block" 
    onclick="javascript:validarLogueo() == 0 ? '@Url.Action('VistaViandasPersonal', 'Menu')' : '@Url.Action('VistaAdministrador', 'Menu')'">

我强烈建议您转而使用jQuery事件处理程序,而不要对jQuery使用内联处理程序。 当您需要根站点URL时,母版页可以将其注入到全局变量中

<script>
   window.siteRoot = "@Url.Content("~")";
</script>

并将其简单地添加到jQuery代码中的所有URL之前。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM