将文本框绑定到telerik上载控件MVC3

时间:2012-10-11 10:29:47

标签: asp.net-mvc-3 upload textbox telerik

我希望我的文本框显示telerik上传控件选择的文件名。请在下面找到代码段。

<td>
@Html.TextBox(txtBox, null, new { style = string.Format("width:200px") })
</td>
<td style="padding-top: 1%; padding-left: 8%">
@(Html.Telerik().Upload().Name(BrowseButton)
//.HtmlAttributes(new { @class = "myCustomClass" }).Multiple(false))

目前,文本框显示为null。

1 个答案:

答案 0 :(得分:0)

Telerik控件应该允许您显示文件名。你额外的文本框似乎是多余的。

阅读telerik documentation,特别是html and css section。它说:

在上传期间和之后,会显示一个文件列表,其中显示了每个上传文件的进度和状态。它的HTML输出如下:

<ul class="t-upload-files t-reset">
    <li class="t-file">
        <span class="t-icon t-success">uploaded</span>
        <span class="t-filename">some-uploaded-file.jpg</span>
        <button class="t-button t-button-icontext t-upload-action" type="button">
                 <span class="t-icon t-delete"></span>Remove</button>
    </li>
    <li class="t-file">
        <span class="t-icon t-fail">failed</span>
        <span class="t-filename">some-failed-file.jpg
            <span class="t-progress">
         <span style="width: 75%;" class="t-progress-status">
            </span></span>
        </span>
        <button class="t-button t-button-icontext t-upload-action" type="button">
                    <span class="t-icon t-retry"></span>Retry</button>
    </li>
</ul>

如果您想更新自己的文本框,只需在创建telerik控件时添加此文件即可使用客户端API

@(Html.Telerik().Upload().Name(BrowseButton)
.ClientEvents(events => events.OnSelect("onSelect"))

并在您的javascript中

function onSelect(e) {
        // Array with information about the uploaded files
        $('#yourTextboxId').val(e.files[0].name);  
    }

同样,所有细节都在documentation