Javascript/jQuery:将输入元素的键和值显示为JSON表示



我在显示toJSON字符串的动态键和值时遇到麻烦。

这是我的:

var element = $(this),
    settings = $.extend({
        color: "#556b2f",
        backgroundColor: "white",
        textSize: "25%",
        toJsonPath: "",
        objectPropertyName: null,
        appendtoJsonElement: "#outputJson",
        hiddenInputField: $('input[name="hiddenField"]'),
        tempInputField: $('<input name="temp" type="text" />')
    }, options),
    toJson = function(textValue){
    var path = settings.toJsonPath;
    var $ElOutput = settings.appendtoJsonElement;
    var key = settings.hiddenInputField.attr("name");
    var value = textValue; 
    var object = key[value];
    if (object){
        path.push(object);
        $($ElOutput).html(JSON.stringify(path, null, 't'));
    }
    else {
        path.push(textValue);
        $($ElOutput).html(JSON.stringify(path, null, 't'));
    }

我想在输入标签中有一个data-title属性,我可以在其中指定'key'。现在我使用名称属性作为"键"。'textvalue'变量将是值。

:

"关键":"价值"

现在我得到的值显示在引号中。我需要两者来完成JSON。

有什么建议吗?

var json = {};
// Take selectors
$('input').each(function (){ 
    json[$(this).data('title')] = $(this).val();
});

最新更新