src vs srctarget vs srcwait

时间:2013-12-10 08:16:54

标签: asp.net iframe

我继续研究一个我还不完全了解的项目。我遇到了以下代码行:

<iframe id="AddDialog" style ="overflow: hidden; width:1150px; height:450px;" class="Dialogframe"  scrolling="no"  srcwait=@Html.Raw("'" + Url.Action("Index", "FieldChooser") + "'") srctarget=@Html.Raw("\"" + Url.Action("Index", "FieldChooser", new { ColumnFormat = false, resultmodel = Guid.Empty, datatype = "", multiselect=false }) + "\"") src=@Html.Raw("\"" + Url.Action("Loading", "FieldChooser") + "\"")></iframe>

Visual Studio告诉我srcwait和srctarget不是有效的HTML5元素,但它似乎有效。加载视图显示几秒钟,然后执行Index()方法(在srctarget中调用的方法)。

我也无法在互联网上找到有关srctarget和srcwait属性的任何内容。那么src,srctarget和srcwait之间有什么区别?他们甚至存在,还是在我面前发挥作用的人的一些发明?

我在FieldChooserController中有一个函数

    [HttpPost]
    public ActionResult Index(string id)
    {
     ...
    }

我希望在单击“确定”按钮时调用它。我假设srcwait部分是为了那个,因为调用看起来像那样,但函数永远不会被调用。

请耐心告诉我,如果您需要查看更多代码,此时我不知道什么是重要的。


            buttons: {
                OK: function() {
                //Save selected Value

                    $( this ).dialog( "close" );
                    if (GlobalName !=''){
                         addwhere(GlobalName,opts.sourceel,GlobalDefVal,GlobalDataType,GlobalValue);
                         }
                              $('#AddDialog').attr('src', $('#AddDialog').attr('srcwait'));
                },
                Cancel: function() {
                    $( this ).dialog( "close" );
                              $('#AddDialog').attr('src', $('#AddDialog').attr('srcwait'));
                }
            }

1 个答案:

答案 0 :(得分:2)

很可能正在运行一段JavaScript,当执行操作时用户将等待一个诡计,例如显示加载屏幕时,会将src设置为srcwait

至于您的代码,如果您希望在点击按钮时调用HttpPost带注释的Index()方法,则必须创建一个表单并将其发布到那里:

@using (Html.BeginForm("Index", "FieldChooser", FormMethod.Post)
{
    <input value="OK" type="submit" />
}