0

下午,

我正在为从数据库返回的项目的代码中的多个文本框设置 ID。例如...

<input type="text" id="abcd1234" value="0.00">

基本上,在返回项目时设置了 id,我需要使用 jQuery 获取 id,这样我就可以用新价格更新文本框中的值。

我需要返回 1)id 和 2)值,以便我可以处理它。有人能建议我怎么做吗?

更新:这是我要使用的更新功能...请忽略传递过来的数据,因为一旦我能够从上面提到的文本框中获取价格,我就会更新它。- 删除数据。:)

$('.update').live('click', function () {
    $('#saving').show();


    $.ajax({ type: "POST",
        url: "../Web.asmx/UpdateData",
        data: **JSON will go here**,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (response) {
            $('#saving').hide();
            $('#infoMsg').show();
            $('#infoMsg').addClass('er-green');
            $('#infoMsg').html("Product was updated successfully.");
        },
        error: function (msg) {
            $('#saving').hide();
            $('#infoMsg').show();
            $('#infoMsg').addClass('er-yellow');
            $('#infoMsg').html("We are unable to update the product at this time.");
        }
    });
});

非常感谢...

艾伦

4

5 回答 5

0

好的,所以我所做的是设置表格行的 ID,这是最简单的选择!

一旦我有了这个,我就能够获取 sku/id 和文本框值并像这样更新数据库。

非常感谢大家的帮助和解决方案:)

于 2012-06-28T09:59:19.830 回答
0

没有真正干净的方法来做到这一点——通常,它不应该真的这样做。使用 ID 的意义与此相反——使用 id 查找控件,而不是使用其他属性查找 ID。(提示:如果您真的想这样做,请查看您可以放在控件上的其他属性,并使用它进行搜索。)

和编辑:只是想到了一个更好的方法。将该输入包装在一个 div 中,通过 id 找到该 div,然后将其解析为子元素

于 2012-06-27T14:37:23.450 回答
0

不确定您想要哪个事件的输入元素的 ID。加载 DOM 后,以下脚本将为您提供文本类型的所有 Input 元素的 ID

$(function(){

  var items=$("input[type='text']");
  $.each(items,function(){
    var item=$(this);

    var itemId=item.attr("id");  // get the ID of element
    alert(itemId);

    item.val("New value");  // set new value
  });

});

工作示例http://jsfiddle.net/p5zbT/4/

编辑:根据评论

要让他的文本属于一个表,请像这样更改您的选择器

 var items=$("#dataTable input[type='text']");

这将选择表(或任何 HTML 元素)内input类型为的元素。textIDdataTable

工作样本:http: //jsfiddle.net/p5zbT/9/

于 2012-06-27T14:38:51.940 回答
0
$.each($('input[type=text]'), function(i,obj){
  console.log('ID : '+$(this).attr('id')+', Value : '+$(this).val());
});
于 2012-06-27T14:39:13.177 回答
0

不是很清楚你在问什么,但是如果你需要遍历所有输入元素并对它们做一些事情,你可以使用下面的 jQuery 代码

$("input[type='text']").each(function() {
    // do work here
    console.log(this.id);
});
于 2012-06-27T14:39:45.757 回答