3

我有以下表格:

<form id="xx">
<button type="button">Submit</button>
<button type="button">Submit and Close</button>
<button type="button">Close</button>
</form>

如何将包含“提交”一词的按钮类型从“按钮”类型更改为“提交”类型?

4

4 回答 4

3
$('button').filter(function(){
    return $(this).text().toLowerCase().indexOf('submit') != -1;
}).prop('type','submit');

首先过滤具有“提交”为文本的按钮,然后更改属性。

于 2012-09-18T09:01:12.760 回答
3

我您的按钮有一个 id,例如“按钮”,这可以通过以下方式实现:

$('#button').prop('type', 'submit');

如果您希望使用文本“提交”更改所有按钮的属性,可以通过以下方式实现:

$('button').each(function(){
    if($(this).text().indexOf("Submit") != -1){
        $(this).prop('type','submit');
    }
});
于 2012-09-18T09:00:10.853 回答
1

在按钮中创建 id 并执行以下操作

$('#buttonid').replaceWith($('#buttonid').clone().attr('type', 'submit'));
于 2012-09-18T09:00:29.067 回答
0

像这样的东西应该可以工作(未经测试):

$('button').each(function() {
    if($(this).text().match(/submit/i)) {
        $(this).prop('type', 'submit');
    }
});

编辑

值得指出的是,这里的所有其他答案都不适用于 Internet Explorer:

注意:jQuery 禁止更改 or 元素的 type 属性,并且会在所有浏览器中抛出错误。这是因为不能在 Internet Explorer 中更改类型属性。

http://api.jquery.com/attr/

(我也对此进行了测试.prop(),虽然没有抛出错误,但它不起作用)

于 2012-09-18T09:04:34.180 回答