从Ajax ActionLink MVC3.0传递参数到Javascript方法
Pass argument to Javascript metod from Ajax ActionLink MVC3.0
我有一个问题发送参数(Id)到javascript函数。让我告诉你基本的想法:我有一个培训模型,每个培训模型都有一个调查。我在下面的代码中所做的是为每个培训生成一个弹出链接,员工需要并显示一个弹出窗口。为此,我使用了Ajax ActionLink,并在每个部分中显示弹出窗口,我创建了一个id为Training的div。所以当onComplete时,我调用一个javascript函数openPopup来显示弹出窗口,但它没有。综上所述,我有不同的div,我将弹出一个窗口,我想把div的id传递给javascript函数。你能告诉我如何解决这个问题吗?
谢谢。
<script type="text/javascript">
$(document).ready(function (id) {
$(id).dialog({
autoOpen: false,
title: 'Anket',
width: 500,
height: 'auto',
modal: true
});
});
function openPopup(id) {
$(id).dialog("open");
}
</script>
foreach (var training in Model.TrainingList)
{
<tr>
<td class="view_detail_label">
Eğitim Adı
</td>
<td>
@Ajax.ActionLink(training.Name.Name,
"AddSurvey",
new { employeeId = Model.Id, trainingId = training.Id },
new AjaxOptions
{
UpdateTargetId = training.Id.ToString(),
HttpMethod = "GET",
InsertionMode = InsertionMode.Replace,
LoadingElementId = "context",
OnComplete = "openPopup('"+training.Id.ToString()+"')"
})
<div id="@training.Id" style="display:none;"/>
</td>
</tr>
}
}
</table>
您可以使用一个普通的Html.ActionLink
,您可以不显眼地进行ajax化,从而为您提供更大的灵活性。你似乎也使用了document.ready
函数的一些id
参数,它不存在,也无处可去。document.ready
回调不接受任何参数。
:
<script type="text/javascript">
$(document).ready(function () {
$('.addSurvey').click(function() {
$.ajax({
url: this.href,
type: 'GET',
cache: false,
context: this,
success: function(result) {
$(this).next('.result').html(result).dialog({
autoOpen: true,
title: 'Anket',
width: 500,
height: 'auto',
modal: true
});
}
});
return false;
});
});
</script>
<table>
@foreach (var training in Model.TrainingList)
{
<tr>
<td class="view_detail_label">
Eğitim Adı
</td>
<td>
@Html.ActionLink(
training.Name.Name,
AddSurvey,
new {
employeeId = Model.Id,
trainingId = training.Id
},
new {
@class = "addSurvey"
}
)
<div class="result"></div>
</td>
</tr>
}
</table>
我也强烈建议你把你的脚本移到一个单独的javascript文件中,不要把你的标记和脚本混在一起。
备注:因为你在一个模态对话框中打开AJAX调用的结果,我不太明白在每行中有一个结果div的意义。你可以简单地把它从<table>
中移出来,并有一个单独的
相关文章:
- 在url参数javascript中存储键值对列表
- 可选参数 JavaScript 技巧
- 如何计算参数 JavaScript 中的条件
- 未定义的变量作为函数参数 javascript
- 使用带有参数 Javascript 的函数更改全局变量
- 如何在参数JavaScript中更改对象属性
- 如何使用参数(javascript)调用Date构造函数
- 作为参数(javascript)传递的函数的系统唯一id
- Backbone.BabySiter内部参数-Javascript Scope
- 未定义函数参数-Javascript
- 谷歌地图api v3-IE7-main.js错误-无效参数(javascript)
- 通过onclick函数发送参数-Javascript
- 传递属于对象的匿名方法作为参数-Javascript
- 未捕获类型错误:没有足够的参数Javascript游戏
- 缺少)参数Javascript错误
- 在函数参数Javascript上使用toSentenceCase
- 跳过函数参数javascript
- 如何在调用不带括号的函数时传递参数 [Javascript]
- 如何传递多个参数javascript
- Foreach键和值输入参数javascript