Make selected custom shipping method shows custom input textarea at onepage checkout Planned...

Do I really need recursive chmod to restrict access to a folder?

Should I use a zero-interest credit card for a large one-time purchase?

Is CEO the profession with the most psychopaths?

What would be the ideal power source for a cybernetic eye?

What do you call a floor made of glass so you can see through the floor?

Crossing US/Canada Border for less than 24 hours

Does classifying an integer as a discrete log require it be part of a multiplicative group?

How to find all the available tools in mac terminal?

How do pianists reach extremely loud dynamics?

When was Kai Tak permanently closed to cargo service?

Do square wave exist?

What does the "x" in "x86" represent?

Is it a good idea to use CNN to classify 1D signal?

Do I really need to have a message in a novel to appeal to readers?

How can I use the Python library networkx from Mathematica?

Why are there no cargo aircraft with "flying wing" design?

また usage in a dictionary

Why aren't air breathing engines used as small first stages

Did MS DOS itself ever use blinking text?

Around usage results

Can a party unilaterally change candidates in preparation for a General election?

What is the longest distance a player character can jump in one leap?

Irreducible of finite Krull dimension implies quasi-compact?

Is it ethical to give a final exam after the professor has quit before teaching the remaining chapters of the course?



Make selected custom shipping method shows custom input textarea at onepage checkout



Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
Announcing the arrival of Valued Associate #679: Cesar Manara
Unicorn Meta Zoo #1: Why another podcast?Onepage checkout: how to start checkout from shipping method?OnePage Checkout - Hide Payment method depending on Shipping MethodOnepage Checkout - Get selected payment methodOnePage Checkout - Hide Payment method depending on selected shipping methodShipping price in one page checkout - order review return zeroMagento2: How to change the title of the delivery method at checkout using KnockoutJS?Remove “CHECKOUT METHOD” from onepagePlease specify shipping method with custom shipping method - Magento 2Magento 2.2.5: Add, Update and Delete existing products Custom OptionsMagento 2.1 - How to set shipping method at Checkout page programmatically





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}







8















I successfully added custom shipping method like this:



app/etc/config.xml



<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
<default>
<carriers>
<lime>
<active>1</active>
<allowed_methods>delivery</allowed_methods>
<methods>delivery</methods>
<type>NAMESPACE</type>
<sallowspecific>0</sallowspecific>
<model>NamespaceModuleModelCarrier</model>
<name>Namespace_Module custom Shipping</name>
<title>Namespace_Module custom Shipping</title>
<handling_type>F</handling_type>
</lime>
</carriers>
</default>
</config>


app/code/Namespace/Module/Model/Carrier.php



public function collectRates(RateRequest $request)
{
if (!$this->getConfigFlag('active')) {
return false;
}
$result = $this->_rateResultFactory->create();
$method = $this->_rateMethodFactory->create();
$method->setCarrier('HILO');
$method->setCarrierTitle('HILO');
$method->setMethod('Fast');
$method->setMethodTitle('Fast');
$amount = $this->getConfigData('price');
$method->setPrice($amount);
$method->setCost($amount);
$result->append($method);
return $result;
}


It shows up at checkout page, but I want to show custom text area input data when the user choose my custom shipping method, and I can save the custom input text area data.



here's what I want it to look like:



enter image description here










share|improve this question




















  • 1





    hi, how did you add this field?can you please help me to get a code?

    – Mujahidh
    Sep 4 '18 at 6:30


















8















I successfully added custom shipping method like this:



app/etc/config.xml



<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
<default>
<carriers>
<lime>
<active>1</active>
<allowed_methods>delivery</allowed_methods>
<methods>delivery</methods>
<type>NAMESPACE</type>
<sallowspecific>0</sallowspecific>
<model>NamespaceModuleModelCarrier</model>
<name>Namespace_Module custom Shipping</name>
<title>Namespace_Module custom Shipping</title>
<handling_type>F</handling_type>
</lime>
</carriers>
</default>
</config>


app/code/Namespace/Module/Model/Carrier.php



public function collectRates(RateRequest $request)
{
if (!$this->getConfigFlag('active')) {
return false;
}
$result = $this->_rateResultFactory->create();
$method = $this->_rateMethodFactory->create();
$method->setCarrier('HILO');
$method->setCarrierTitle('HILO');
$method->setMethod('Fast');
$method->setMethodTitle('Fast');
$amount = $this->getConfigData('price');
$method->setPrice($amount);
$method->setCost($amount);
$result->append($method);
return $result;
}


It shows up at checkout page, but I want to show custom text area input data when the user choose my custom shipping method, and I can save the custom input text area data.



here's what I want it to look like:



enter image description here










share|improve this question




















  • 1





    hi, how did you add this field?can you please help me to get a code?

    – Mujahidh
    Sep 4 '18 at 6:30














8












8








8








I successfully added custom shipping method like this:



app/etc/config.xml



<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
<default>
<carriers>
<lime>
<active>1</active>
<allowed_methods>delivery</allowed_methods>
<methods>delivery</methods>
<type>NAMESPACE</type>
<sallowspecific>0</sallowspecific>
<model>NamespaceModuleModelCarrier</model>
<name>Namespace_Module custom Shipping</name>
<title>Namespace_Module custom Shipping</title>
<handling_type>F</handling_type>
</lime>
</carriers>
</default>
</config>


app/code/Namespace/Module/Model/Carrier.php



public function collectRates(RateRequest $request)
{
if (!$this->getConfigFlag('active')) {
return false;
}
$result = $this->_rateResultFactory->create();
$method = $this->_rateMethodFactory->create();
$method->setCarrier('HILO');
$method->setCarrierTitle('HILO');
$method->setMethod('Fast');
$method->setMethodTitle('Fast');
$amount = $this->getConfigData('price');
$method->setPrice($amount);
$method->setCost($amount);
$result->append($method);
return $result;
}


It shows up at checkout page, but I want to show custom text area input data when the user choose my custom shipping method, and I can save the custom input text area data.



here's what I want it to look like:



enter image description here










share|improve this question
















I successfully added custom shipping method like this:



app/etc/config.xml



<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
<default>
<carriers>
<lime>
<active>1</active>
<allowed_methods>delivery</allowed_methods>
<methods>delivery</methods>
<type>NAMESPACE</type>
<sallowspecific>0</sallowspecific>
<model>NamespaceModuleModelCarrier</model>
<name>Namespace_Module custom Shipping</name>
<title>Namespace_Module custom Shipping</title>
<handling_type>F</handling_type>
</lime>
</carriers>
</default>
</config>


app/code/Namespace/Module/Model/Carrier.php



public function collectRates(RateRequest $request)
{
if (!$this->getConfigFlag('active')) {
return false;
}
$result = $this->_rateResultFactory->create();
$method = $this->_rateMethodFactory->create();
$method->setCarrier('HILO');
$method->setCarrierTitle('HILO');
$method->setMethod('Fast');
$method->setMethodTitle('Fast');
$amount = $this->getConfigData('price');
$method->setPrice($amount);
$method->setCost($amount);
$result->append($method);
return $result;
}


It shows up at checkout page, but I want to show custom text area input data when the user choose my custom shipping method, and I can save the custom input text area data.



here's what I want it to look like:



enter image description here







magento2 layout onepage-checkout additional-information custom-shipping-method






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Dec 20 '17 at 3:09







nortonuser

















asked Dec 19 '17 at 5:05









nortonuser nortonuser

386115




386115








  • 1





    hi, how did you add this field?can you please help me to get a code?

    – Mujahidh
    Sep 4 '18 at 6:30














  • 1





    hi, how did you add this field?can you please help me to get a code?

    – Mujahidh
    Sep 4 '18 at 6:30








1




1





hi, how did you add this field?can you please help me to get a code?

– Mujahidh
Sep 4 '18 at 6:30





hi, how did you add this field?can you please help me to get a code?

– Mujahidh
Sep 4 '18 at 6:30










1 Answer
1






active

oldest

votes


















2














In order to show a custom input field after selecting your custom shipping method, you have to add a js block subscribing to select method event:



Add a custom phtml to layout checkout_index_index.xml



Then add the next block to your phtml:



<script type="text/javascript">
require([
'jquery',
'Magento_Checkout/js/model/quote',
], function (jQuery, quote) {
jQuery(document).ready(function () {
quote.shippingMethod.subscribe(function (value) {
if (quote.shippingMethod() && quote.shippingMethod().carrier_code == 'your_custom_shipping_method_code') {
var customBlock = "<div class ='custom-information'><input type="text" id="your_custom_id"></div>";
if((!$('.custom-information').length > 0)) {
$('#checkout-shipping-method-load').append(customBlock);
}
});
});
});
});
</script>


With the above code, you will add the input you want below your custom shipping method.



After that, you should have to create a plugin to save your custom value.




Check: MagentoCheckoutModelGuestShippingInformationManagement




I hope it helps you.
Regards,
Pablo






share|improve this answer





















  • 1





    can you please explain this little more

    – Mujahidh
    Sep 5 '18 at 6:31












Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "479"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f206310%2fmake-selected-custom-shipping-method-shows-custom-input-textarea-at-onepage-chec%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









2














In order to show a custom input field after selecting your custom shipping method, you have to add a js block subscribing to select method event:



Add a custom phtml to layout checkout_index_index.xml



Then add the next block to your phtml:



<script type="text/javascript">
require([
'jquery',
'Magento_Checkout/js/model/quote',
], function (jQuery, quote) {
jQuery(document).ready(function () {
quote.shippingMethod.subscribe(function (value) {
if (quote.shippingMethod() && quote.shippingMethod().carrier_code == 'your_custom_shipping_method_code') {
var customBlock = "<div class ='custom-information'><input type="text" id="your_custom_id"></div>";
if((!$('.custom-information').length > 0)) {
$('#checkout-shipping-method-load').append(customBlock);
}
});
});
});
});
</script>


With the above code, you will add the input you want below your custom shipping method.



After that, you should have to create a plugin to save your custom value.




Check: MagentoCheckoutModelGuestShippingInformationManagement




I hope it helps you.
Regards,
Pablo






share|improve this answer





















  • 1





    can you please explain this little more

    – Mujahidh
    Sep 5 '18 at 6:31
















2














In order to show a custom input field after selecting your custom shipping method, you have to add a js block subscribing to select method event:



Add a custom phtml to layout checkout_index_index.xml



Then add the next block to your phtml:



<script type="text/javascript">
require([
'jquery',
'Magento_Checkout/js/model/quote',
], function (jQuery, quote) {
jQuery(document).ready(function () {
quote.shippingMethod.subscribe(function (value) {
if (quote.shippingMethod() && quote.shippingMethod().carrier_code == 'your_custom_shipping_method_code') {
var customBlock = "<div class ='custom-information'><input type="text" id="your_custom_id"></div>";
if((!$('.custom-information').length > 0)) {
$('#checkout-shipping-method-load').append(customBlock);
}
});
});
});
});
</script>


With the above code, you will add the input you want below your custom shipping method.



After that, you should have to create a plugin to save your custom value.




Check: MagentoCheckoutModelGuestShippingInformationManagement




I hope it helps you.
Regards,
Pablo






share|improve this answer





















  • 1





    can you please explain this little more

    – Mujahidh
    Sep 5 '18 at 6:31














2












2








2







In order to show a custom input field after selecting your custom shipping method, you have to add a js block subscribing to select method event:



Add a custom phtml to layout checkout_index_index.xml



Then add the next block to your phtml:



<script type="text/javascript">
require([
'jquery',
'Magento_Checkout/js/model/quote',
], function (jQuery, quote) {
jQuery(document).ready(function () {
quote.shippingMethod.subscribe(function (value) {
if (quote.shippingMethod() && quote.shippingMethod().carrier_code == 'your_custom_shipping_method_code') {
var customBlock = "<div class ='custom-information'><input type="text" id="your_custom_id"></div>";
if((!$('.custom-information').length > 0)) {
$('#checkout-shipping-method-load').append(customBlock);
}
});
});
});
});
</script>


With the above code, you will add the input you want below your custom shipping method.



After that, you should have to create a plugin to save your custom value.




Check: MagentoCheckoutModelGuestShippingInformationManagement




I hope it helps you.
Regards,
Pablo






share|improve this answer















In order to show a custom input field after selecting your custom shipping method, you have to add a js block subscribing to select method event:



Add a custom phtml to layout checkout_index_index.xml



Then add the next block to your phtml:



<script type="text/javascript">
require([
'jquery',
'Magento_Checkout/js/model/quote',
], function (jQuery, quote) {
jQuery(document).ready(function () {
quote.shippingMethod.subscribe(function (value) {
if (quote.shippingMethod() && quote.shippingMethod().carrier_code == 'your_custom_shipping_method_code') {
var customBlock = "<div class ='custom-information'><input type="text" id="your_custom_id"></div>";
if((!$('.custom-information').length > 0)) {
$('#checkout-shipping-method-load').append(customBlock);
}
});
});
});
});
</script>


With the above code, you will add the input you want below your custom shipping method.



After that, you should have to create a plugin to save your custom value.




Check: MagentoCheckoutModelGuestShippingInformationManagement




I hope it helps you.
Regards,
Pablo







share|improve this answer














share|improve this answer



share|improve this answer








edited 7 mins ago









magefms

2,7252528




2,7252528










answered Dec 27 '17 at 17:45









Pablo GarciaPablo Garcia

1094




1094








  • 1





    can you please explain this little more

    – Mujahidh
    Sep 5 '18 at 6:31














  • 1





    can you please explain this little more

    – Mujahidh
    Sep 5 '18 at 6:31








1




1





can you please explain this little more

– Mujahidh
Sep 5 '18 at 6:31





can you please explain this little more

– Mujahidh
Sep 5 '18 at 6:31


















draft saved

draft discarded




















































Thanks for contributing an answer to Magento Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f206310%2fmake-selected-custom-shipping-method-shows-custom-input-textarea-at-onepage-chec%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

“%fieldName is a required field.”, in Magento2 REST API Call for GET Method Type The Next...

How to change City field to a dropdown in Checkout step Magento 2Magento 2 : How to change UI field(s)...

變成蝙蝠會怎樣? 參考資料 外部連結 导航菜单Thomas Nagel, "What is it like to be a...