使用Jquery

时间:2016-09-08 05:02:51

标签: jquery ajax placeholder

我有一个带有现有占位符的输入字段

<input type="text" name="property_price" id="property_price" placeholder="Monthly Rent" />

现在我有一个ajax函数,它根据表单上方的国家/地区选择框返回货币(卢比或美元)。我想将此ajax货币回报添加到现有占位符中,因此最终结果将在占位符中显示为

每月租金(卢比)或 月租(美元)

这应该在占位符内。价值&#34;月租&#34;也来自一个jquery函数,它说&#34; Monthly Rent&#34;或者&#34;销售价格&#34;取决于该项目是出租还是出售。

ajax funciton货币按照以下

返回结果
alert(msg);

初始占位符的值来自此Jquery函数。

$('#property_availablefor').on('change', function() {

        if ( this.value == 'Rent')
        {
        $("#property_price").attr('placeholder', "Monthly Rent");

        }
        else if ( this.value == 'Sale')
        {
        $("#property_price").attr('placeholder', "Total Price");



        }

2 个答案:

答案 0 :(得分:1)

改变html,如:

<input type="text" name="property_price" id="property_price" currency="USD" />

设置此全局

 var arr = {'Rent':"Monthly Rent",'Sale':"Total Price"};

在ajax success&amp; amp;上设置数据属性中的货币类型。如果您在租金/销售元素之后更改国家/地区,则更新占位符

$('#property_price').attr('currency',currency);
if(  $('#property_availablefor').val().length > 0 ) {//check if the rent/sale element was  selected
     $("#property_price").attr('placeholder', $('#property_availablefor').val()+' '+ currency);
}

您更改事件将如下所示:

$('#property_availablefor').on('change', function() {
     var currency = $('#property_price').attr('currency');
        $("#property_price").attr('placeholder', arr[this.value]+' '+ currency);
});

答案 1 :(得分:0)

you can do the following:
$(document).on('change', '<country select box>', function() {
//your ajax call that returns the currency
//get the currency value in a variable say 'currencyVal'
//now assign the placeholder to the textbox.
var intitialPlaceholderTxt = $("#property_price").attr('placeholder').substring(0, $("#property_price").attr('placeholder').indexOf('(') != -1 ? $("#property_price").attr('placeholder').indexOf('(') : $("#property_price").attr('placeholder').length);
$("#property_price").attr('placeholder', intitialPlaceholderTxt + ' (' + currencyVal + ')');
});