从客户端获取文本控件值

时间:2013-10-02 14:52:27

标签: javascript asp.net extjs ext.net

有人告诉我这个代码有什么问题。我可以达到textPlaka值, 我可以得到值id和theString但不是Plaka。

<script type="text/javascript">
        $(document).ready(function () {

            var id = "55";
            var theString = "asdf";
            var Plaka = document.getElementById('<%= txtPlaka.ClientID %>').value; 





            $("#<%=FileUpload1.ClientID%>").uploadify({
                'uploader': 'Upload.ashx',
                'swf': 'uploadify/uploadify.swf',
                'script': 'Upload.ashx',
                'cancelImg': 'images/cancel.png',
                'folder': 'upload',
                'multi': true,
                'method'   : 'post',
                'buttonText': 'RESIM SEC',
                'fileExt': '*.jpg;*.png;*.gif;*.bmp;*.jpeg',
                'auto': false,
                'formData': { 'id': id,'foo': theString ,'Plaka':Plaka},
                onAllComplete: function (event, data) {

                }

            });
        });

这是控制器

  <ext:TextField ID="txtPlaka" runat="server" FieldLabel="Plaka" Flex="1" AllowBlank="false">
                        </ext:TextField>

谢谢大家。

2 个答案:

答案 0 :(得分:2)

您正试图在var Plaka函数处获得ready()的值。即,当页面加载时。 如果页面加载时没有值,则无法获得任何值!

此外,您正在使用控件(ext:TextField)。请查看其HTML呈现方式。在Google Chrome中使用F12来检查元素。

更新:

假设您有一个提交按钮,其ID是btnSubmit 试试这样的事情,

$(document).ready(function () {
  var id = "55";




$("#btnMusteriEkle").click(function(e){
   e.preventDefault();
        var theString = "asdf";
        var Plaka = document.getElementById('<%= txtPlaka.ClientID %>').value;
        $("#<%=FileUpload1.ClientID%>").uploadify({
            'uploader': 'Upload.ashx',
            'swf': 'uploadify/uploadify.swf',
            'script': 'Upload.ashx',
            'cancelImg': 'images/cancel.png',
            'folder': 'upload',
            'multi': true,
            'method'   : 'post',
            'buttonText': 'RESIM SEC',
            'fileExt': '*.jpg;*.png;*.gif;*.bmp;*.jpeg',
            'auto': false,
            'formData': { 'id': id,'foo': theString ,'Plaka':Plaka},
            onAllComplete: function (event, data) {

            }

        });
       });
    });

我想从处理程序中获取值。你可以使用

string PlakaValue=context.Request.Form["Plaka"];

答案 1 :(得分:1)

您应该能够将代码简化为以下内容:

示例

// Existing
// var Plaka = document.getElementById('<%= txtPlaka.ClientID %>').value; 

// Revised
var Plaka = <%= txtPlaka.ClientID %>.getValue();

如果在初始页面加载期间调用该代码,则txtPlaka TextField可能没有设置值。

当您拨打txtPlaka时,您还可以获得uploadify值。

示例

// Existing
// 'formData': { 'id': id,'foo': theString ,'Plaka':Plaka},

// Revised
'formData': { 'id': id,'foo': theString ,'Plaka':<%= txtPlaka.ClientID %>.getValue()},

希望这有帮助。