jQgrid编辑表单下拉列表有额外的引用

发布于 2024-11-19 19:26:37 字数 709 浏览 3 评论 0原文

我有一个 MVC2 EditStatesController :

     public JsonResult GetStates()
     {
         string statesToReturn = GetStates();  // returns "1: Alabama; 2: Alaska; 3:  Arizona; 4: Arkansas"
         return Json(statesToReturn);
     }

这是调用控制器的代码:

//get States
    var listOfStates = $.ajax({
        url:    '/EditStates/GetStates', 
        type: 'POST',
        async: false, 
        success: function(data, result) {
            if (!result) 
                alert('Failure to retrieve States.');
        }
    }).responseText;

下拉列表有元素列表,但最后一个元素有额外的“(双引号),所以怀俄明州的最后一个州是怀俄明州”。

我搜索了其他问题,但没有找到类似的问题。您知道为什么会发生这种情况以及如何解决这个问题吗? 谢谢你, 珍妮

I have an MVC2 EditStatesController :

     public JsonResult GetStates()
     {
         string statesToReturn = GetStates();  // returns "1: Alabama; 2: Alaska; 3:  Arizona; 4: Arkansas"
         return Json(statesToReturn);
     }

this is the code that calls the controller:

//get States
    var listOfStates = $.ajax({
        url:    '/EditStates/GetStates', 
        type: 'POST',
        async: false, 
        success: function(data, result) {
            if (!result) 
                alert('Failure to retrieve States.');
        }
    }).responseText;

The dropdown has the list of elements, but last element has extra " (double quote), so the last state Wyoming is Wyoming".

I searched other questions, but didn't find a similar one. Do you know why this is happening and how to fix this?
Thank you,
Jenny

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

信仰 2024-11-26 19:26:37

搜索选项可以使用dataUrl 和可选的 buildSelect 而不是您当前尝试使用的 value

jqGrid 需要构造如下 HTML 片段:

<select>
    <option value="1">Alabama</option>
    <option value="2">Alaska</option>
    <option value="3">Arizona</option>
    <option value="4">Arkansas</option>
</select>

因此,您可以直接提供控制器操作中的数据,也可以提供任何其他输出(例如 JSON 输出):

[
    {"id":1, "name":"Alabama"},
    {"id":2, "name":"Alaska"},
    {"id":3, "name":"Arizona"},
    {"id":4, "name":"Arkansas"}
]

并使用 buildSelect 事件处理程序来转换 JSON使用 将数据传输到 HTML 片段。请参阅回答了解详情。

如果您选择这种方式,那么任何特殊字符(如“””、“:”、“;”)都不会出现问题等等。

The searchoptions can use dataUrl and optionally buildSelect instead of value which you try to use currently.

jqGrid need to construct the HTML fragment like the following:

<select>
    <option value="1">Alabama</option>
    <option value="2">Alaska</option>
    <option value="3">Arizona</option>
    <option value="4">Arkansas</option>
</select>

So you can either provide the data from an action of your controller directly or provide any other output like JSON output:

[
    {"id":1, "name":"Alabama"},
    {"id":2, "name":"Alaska"},
    {"id":3, "name":"Arizona"},
    {"id":4, "name":"Arkansas"}
]

and use buildSelect event handler to convert the JSON data to the HTML fragment with <select>...</select>. See the answer for details.

If you choose the way you will have no problems with any special characters like '"', ':', ';' and so on.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文