任何人都知道如何在'@ Url.Action(动作,控制器)中使用varibale?EmpId ='+ EmpId +'& SubModuleId ='+ SubModuleId;
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.GET_TASKS"/>
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.ACCESS_SUPERUSER"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
答案 0 :(得分:2)
action
和controller
是javascript变量,而@Url.Action()
是在发送到视图之前在服务器上解析的剃刀代码。这些变量尚不存在(不在范围内),因此您会收到错误。
一种选择是使用
var url = '/' + controller + '/' + action + '?EmpId=' + EmpId + '&SubModuleId=' + SubModuleId;
然而,更好的解决方案是使用class="CreateEditView"
在您的元素中呈现一个data-val属性 - 比如data-url="@Url.Action("yourAction", "yourController")"
,然后使用var url = $(this).data('url');
旁注。在.load()
方法中,您也可以将其用作
$('#' + view + '').load($(this).data('url'), { EmpId: EmpId, SubModuleId: SubModuleId });
但请注意,这种用法(将参数添加为对象)意味着.load()
函数将进行POST而不是GET