jQuery 可以更改输入提交类型的文本,但按钮不再可点击
jQuery can change the text of input submit type but button is no longer clickable
我使用的是 jaquery 和 jquery 移动版 1.8,我有一个这样的按钮:
<div class="ui-bar-a" id="myButton" style="bottom:0;position: fixed;width: 100%">
<input type="submit" name="Next" id="NextButton" value="Save" />
</div>
我有一个 javascript 可以像这样更改文本:
$('#AnyButton').live('click', function() {
if(true)
{
$('#myButton div').text('Saving')
}
else
$('#myButton div').text('Continue');
});
我尝试了很多其他方法都没有用,但这个方法有效,但是在我更改文本后,按钮似乎用文本 Saving 或 Continue 替换了 myButton div 内容,因此按钮没有更长的可点击时间。
在我的浏览器调试器中,按钮显示文本保存出现在 myButton 和 Nextbutton 输入之间。
像这样:
<div class="ui-bar-a" id="myButton" style="bottom:0;position: fixed;width: 100%">
"Save"
<input type="submit" name="Next" id="NextButton" value="Save" />
</div>
如果我没看错你的post,你想更改
输入,您需要更改它的值 属性。
我认为 .live
相对较旧且已弃用,应替换为 .on
和委托事件处理程序
$('#AnyButton').live('click', function() {
if(true)
$('#myButton').find('input[type="submit"]').val('Saving');
else
$('#myButton').find('input[type="submit"]').val('Continue');
});
我怀疑您的代码中包含的内容比您提供的要多。对于 jQuery 移动版,每个 input
都被视为一个按钮。所以你可能需要在动态更新后刷新它。
此代码有效:
$(function() {
$("#NextButton").click(function(e) {
e.preventDefault();
$(this).val("Saving").button("refresh");
});
});
<link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
<script src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<div class="ui-bar-a" id="myButton" style="bottom:0;position: fixed;width: 100%">
<input type="submit" name="Next" id="NextButton" value="Save" />
</div>
查看更多:https://api.jquerymobile.com/button/ and https://demos.jquerymobile.com/1.4.5/button/
我使用的是 jaquery 和 jquery 移动版 1.8,我有一个这样的按钮:
<div class="ui-bar-a" id="myButton" style="bottom:0;position: fixed;width: 100%">
<input type="submit" name="Next" id="NextButton" value="Save" />
</div>
我有一个 javascript 可以像这样更改文本:
$('#AnyButton').live('click', function() {
if(true)
{
$('#myButton div').text('Saving')
}
else
$('#myButton div').text('Continue');
});
我尝试了很多其他方法都没有用,但这个方法有效,但是在我更改文本后,按钮似乎用文本 Saving 或 Continue 替换了 myButton div 内容,因此按钮没有更长的可点击时间。
在我的浏览器调试器中,按钮显示文本保存出现在 myButton 和 Nextbutton 输入之间。
像这样:
<div class="ui-bar-a" id="myButton" style="bottom:0;position: fixed;width: 100%">
"Save"
<input type="submit" name="Next" id="NextButton" value="Save" />
</div>
如果我没看错你的post,你想更改
输入,您需要更改它的值 属性。
我认为 .live
相对较旧且已弃用,应替换为 .on
和委托事件处理程序
$('#AnyButton').live('click', function() {
if(true)
$('#myButton').find('input[type="submit"]').val('Saving');
else
$('#myButton').find('input[type="submit"]').val('Continue');
});
我怀疑您的代码中包含的内容比您提供的要多。对于 jQuery 移动版,每个 input
都被视为一个按钮。所以你可能需要在动态更新后刷新它。
此代码有效:
$(function() {
$("#NextButton").click(function(e) {
e.preventDefault();
$(this).val("Saving").button("refresh");
});
});
<link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
<script src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<div class="ui-bar-a" id="myButton" style="bottom:0;position: fixed;width: 100%">
<input type="submit" name="Next" id="NextButton" value="Save" />
</div>
查看更多:https://api.jquerymobile.com/button/ and https://demos.jquerymobile.com/1.4.5/button/